स्मूथ कर्व फिट करें: checkbox इनपुट
टेक्स्ट और न्यूमेरिक इनपुट्स के विपरीत, checkbox इनपुट्स केवल दो मान ले सकते हैं: TRUE या FALSE। जब यूज़र checkbox इनपुट को चेक करता है, तो इनपुट का मान TRUE होता है, और अगर बॉक्स अनचेक्ड रहे तो यह FALSE लौटाता है।
ध्यान दें कि शुरुआती मान तय करने वाला checkboxInput() फंक्शन का value पैरामीटर केवल TRUE या FALSE ही हो सकता है।
पिछले अभ्यास की Shiny ऐप का कोड कुछ बदलावों के साथ दिया गया है। अब renderPlot() के अंदर का ggplot प्लॉट ऑब्जेक्ट वैरिएबल p को असाइन किया गया है।
यह अभ्यास पाठ्यक्रम का हिस्सा है
केस स्टडीज़: R में Shiny के साथ वेब एप्लिकेशन बनाना
अभ्यास निर्देश
आपका कार्य एक ऐसा checkbox इनपुट जोड़ना है जो चेक होने पर प्लॉट में line of best fit जोड़ दे। विशेष रूप से:
- UI में ID "fit" के साथ एक checkbox इनपुट जोड़ें, लेबल "Add line of best fit" रखें, और शुरुआती स्थिति अनचेक्ड रहे।
- सर्वर में ऐसा कोड जोड़ें कि जब यह इनपुट चेक हो, तो प्लॉट में line of best fit जुड़ जाए। line of best fit जोड़ने का कोड दिया हुआ है (पंक्ति 26)।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Define UI for the application
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
textInput("title", "Title", "GDP vs life exp"),
numericInput("size", "Point size", 1, 1),
# Add a checkbox for line of best fit
___
),
mainPanel(
plotOutput("plot")
)
)
)
# Define the server logic
server <- function(input, output) {
output$plot <- renderPlot({
p <- ggplot(gapminder, aes(gdpPercap, lifeExp)) +
geom_point(size = input$size) +
scale_x_log10() +
ggtitle(input$title)
# When the "fit" checkbox is checked, add a line
# of best fit
if (___) {
p <- p + geom_smooth(method = "lm")
}
p
})
}
# Run the application
shinyApp(ui = ui, server = server)