Menambahkan struktur ke aplikasi Anda
Tata letak (layout) dalam Shiny digunakan untuk memberikan struktur pada aplikasi Anda dengan menempatkan elemen di posisi yang diinginkan.
Sebuah sidebar layout, yang dibuat dengan fungsi sidebarLayout(), menyediakan struktur dua kolom dasar dengan sidebar lebih kecil di sebelah kiri dan panel utama yang lebih besar di sebelah kanan.
Fungsi sidebar layout menerima dua argumen: sidebarPanel() dan mainPanel(). Masing-masing panel ini dapat memuat campuran elemen teks/HTML apa pun, serupa dengan cara Anda dapat mencampurkan elemen-elemen tersebut di dalam fluidPage().
Latihan ini adalah bagian dari kursus
Studi Kasus: Membangun Aplikasi Web dengan Shiny di R
Petunjuk latihan
Tugas Anda adalah menambahkan sidebar layout ke aplikasi yang sudah ada, sehingga input berada di sisi kiri dan output berada di panel utama. Secara khusus, Anda perlu:
- Mendefinisikan UI untuk aplikasi Shiny.
- Menambahkan sidebar layout ke halaman.
- Menambahkan panel sidebar ke layout, lalu tempatkan input dan teks di dalamnya.
- Menambahkan panel utama ke layout, lalu tempatkan plot dan tabel di dalamnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Load the shiny package
library(shiny)
# Define UI for the application
ui <- ___(
# Add a sidebar layout to the application
___(
# Add a sidebar panel around the text and inputs
___(
h4("Plot parameters"),
textInput("title", "Plot title", "Car speed vs distance to stop"),
numericInput("num", "Number of cars to show", 30, 1, nrow(cars)),
sliderInput("size", "Point size", 1, 5, 2, 0.5)
),
# Add a main panel around the plot and table
___(
plotOutput("plot"),
tableOutput("table")
)
)
)
# Define the server logic
server <- function(input, output) {
output$plot <- renderPlot({
plot(cars[1:input$num, ], main = input$title, cex = input$size)
})
output$table <- renderTable({
cars[1:input$num, ]
})
}
# Run the application
shinyApp(ui = ui, server = server)