"All" महाद्वीप देखने की सुविधा दें
कंटिनेंट सेलेक्टर जोड़ने से पहले, Shiny ऐप सभी महाद्वीपों का डेटा दिखाती थी। अब जब कंटिनेंट सेलेक्टर जोड़ दिया गया है, तो डेटा को प्रति महाद्वीप देखा जा सकता है। लेकिन अगर उपयोगकर्ता यह तय करे कि वे किसी विशेष महाद्वीप के आधार पर फ़िल्टर नहीं करना चाहते और सभी को देखना पसंद करेंगे? दुर्भाग्य से, कंटिनेंट सेलेक्टर जोड़ने से यह सुविधा हट गई।
selectInput() फंक्शन के choices आर्ग्युमेंट को बदलकर आप महाद्वीपों की सूची में एक और मान जोड़ सकते हैं, और जब यह मान चुना जाए, तो महाद्वीप फ़िल्टरिंग बंद की जा सकती है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
केस स्टडीज़: R में Shiny के साथ वेब एप्लिकेशन बनाना
अभ्यास निर्देश
select input में "All" महाद्वीप चुनने का एक विकल्प जोड़ें। जब यह विकल्प चुना जाए, तो किसी भी महाद्वीप पर फ़िल्टरिंग न करें। विशेष रूप से:
- UI में select input को दी जाने वाली विकल्पों की सूची में "All" मान जोड़ें।
- सर्वर में, एक if स्टेटमेंट का उपयोग करके जाँचें कि कंटिनेंट "All" पर सेट है या नहीं। अगर "All" चुना गया है, तो महाद्वीपों पर कोई फ़िल्टरिंग न करें (पंक्ति 20)।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
ui <- fluidPage(
h1("Gapminder"),
sliderInput(inputId = "life", label = "Life expectancy",
min = 0, max = 120,
value = c(30, 50)),
# Add an "All" value to the continent list
selectInput("continent", "Continent",
choices = c(___, levels(gapminder$continent))),
tableOutput("table")
)
server <- function(input, output) {
output$table <- renderTable({
data <- gapminder
data <- subset(
data,
lifeExp >= input$life[1] & lifeExp <= input$life[2]
)
# Don't subset the data if "All" continent are chosen
if (___) {
data <- subset(
data,
continent == input$continent
)
}
data
})
}
shinyApp(ui, server)