การสร้างกราฟและผนวกรรมใน RShiny
— rshiny — 1 min read
การสร้างกราฟและแดชบอร์ดใน RShiny เป็นวิธีที่ดีในการแสดงผลข้อมูลในรูปแบบที่น่าสนใจและสื่อความหมายได้อย่างชัดเจน ในบทความนี้เราจะสำรวจวิธีการสร้างกราฟและแดชบอร์ดใน RShiny พร้อมกับตัวอย่างโค้ด
ตัวอย่างการสร้างกราฟและแดชบอร์ดใน RShiny:
library(shiny)library(ggplot2)library(plotly)library(shinydashboard)
# กำหนด UIui <- dashboardPage( dashboardHeader(title = "การสร้างกราฟและแดชบอร์ดใน RShiny"), dashboardSidebar(), dashboardBody( # ส่วนแสดงผลกราฟ tabItems( tabItem(tabName = "plot", fluidRow( box(plotOutput("scatterplot"), width = 6), box(plotOutput("histogram"), width = 6) ) ) ) ))
# กำหนด Serverserver <- function(input, output) { # สร้างกราฟและแสดงผล output$scatterplot <- renderPlot({ ggplot(mtcars, aes(x = wt, y = mpg)) + geom_point() }) output$histogram <- renderPlot({ ggplot(mtcars, aes(x = mpg)) + geom_histogram() })}
# เรียกใช้งานแอปพลิเคชันshinyApp(ui = ui, server = server)`
ในตัวอย่างนี้ เราใช้ library ggplot2
เพื่อสร้างกราฟและ shinydashboard
เพื่อสร้างแดชบอร์ด
ในส่วนของ UI เรากำหนดให้แสดงผลกราฟและแดชบอร์ดในรูปแบบที่ต้องการ ในตัวอย่างนี้เราใช้ plotOutput
และ box
เพื่อแสดงผลกราฟเป็นแผง
ในส่วนของ Server เราใช้ renderPlot
เพื่อสร้างและแสดงผลกราฟ ในตัวอย่างนี้เราสร้างกราฟแบบเม็ดพลัง (scatterplot
) และกราฟแบบฮิสโตแกรม (histogram
) โดยใช้ข้อมูลจากตัวอย่างข้อมูล mtcars
เมื่อรันโค้ดด้านบน แอปพลิเคชัน RShiny จะถูกสร้างขึ้นและแสดงผลบนหน้าเว็บ เป็นกราฟและแดชบอร์ดที่เราได้สร้างขึ้นให้เหมาะสมและน่าสนใจ
เมื่อเรารันโค้ดด้านบนแล้ว แอปพลิเคชัน RShiny ที่เราสร้างขึ้นจะปรากฏหน้าต่างแดชบอร์ดที่มีส่วนหัวว่า "การสร้างกราฟและแดชบอร์ดใน RShiny" ซึ่งจะประกอบไปด้วยส่วนหัวและส่วนของเนื้อหา ในส่วนของเนื้อหาจะมีสองแท็บคือแท็บ "plot" ที่จะแสดงกราฟและแท็บอื่น ๆ ที่เราสามารถเพิ่มได้ตามต้องการ
ในแท็บ "plot" เราใช้ fluidRow
เพื่อกำหนดแถวที่เก็บกล่องข้อมูล ภายในแถว เราใช้ box
เพื่อสร้างกล่องที่จะแสดงผลกราฟ เราให้กล่องกราฟแบบเม็ดพลังแสดงผลจากข้อมูล mtcars
โดยใช้ plotOutput("scatterplot")
และกล่องกราฟแบบฮิสโตแกรมแสดงผลจากข้อมูล mtcars
โดยใช้ plotOutput("histogram")
ในส่วนของ Server เราใช้ renderPlot
เพื่อสร้างและแสดงผลกราฟ ในตัวอย่างนี้เราสร้างกราฟแบบเม็ดพลัง (scatterplot
) และกราฟแบบฮิสโตแกรม (histogram
) โดยใช้ข้อมูลจากตัวแปร mtcars
และใช้ฟังก์ชัน ggplot2
ในการสร้างกราฟ
เมื่อรันโค้ด ด้านบน แอปพลิเคชัน RShiny จะถูกสร้างขึ้นและแสดงผลบนหน้าเว็บ ผู้ใช้งานสามารถเลือกแท็บที่ต้องการแสดงผลได้ และจะมีการแสดงกราฟและแดชบอร์ดตามที่เราได้กำหนดไว้ใ