基于滑块范围的过滤器R闪亮数据框,并在数据表中显示结果

问题描述 投票:0回答:1

我是R和R Shiny的新手。我目前正在尝试创建R Shiny应用,以在选定时段内的选定位置显示数据表中的各个年度平均海平面值。该时间段由用户从范围滑块中选择开始年和结束年来确定,而位置由用户从下拉框中选择。

目前,我只是在下拉框和滑块旁边放了一堆html,而不是显示选定时期和位置的数据的两列表格。查看截图。表格中显示的期间应包括用户选择的开始年和结束年以及之间的年,其相应的平均海平面值显示在相邻列中。

我意识到这可能是一个简单的解决方法,但是作为一个我正在努力的新手。我最终还希望显示所选数据的图表/图以及趋势线。但是现在,我只想让过滤后的数据显示在表格中,这样我就可以扩展表格以显示一些统计信息。

请参阅下面的代码尝试。

非常感谢

布莱恩。

Filtered Data Table fromRange Slider

library(shiny)

Year <- c(2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010)
Auckland <- c(1760, 1549, 1388, 1967, 1326, 1765, 1814, 1693, 1502, 1751)
Wellington <- c(2176, 3154, 1138, 1196, 2132, 3176, 4181, 5169, 3150, 4175)
Lyttelton <- c(2176, 3154, 1138, 1196, 2132, 3176, 4181, 5169, 3150, 4175)
my_data <- as.data.frame(cbind(Year,Auckland,Wellington, Lyttelton))

ui <- fluidPage(
  titlePanel("New Zealand Annual Mean Sea Level (MSL) Summary"),

  sidebarLayout(
    sidebarPanel(
      helpText("Annual Mean Sea Level Summary for various locations around NZ."),

      selectInput("var", 
                  label = "Choose a Location",
                  choices = c("Auckland",
                              "Lyttelton",
                              "Wellington"),
                  selected = "Auckland"),

      sliderInput("range", 
                  label = "Choose a start and end year:",
                  min = min(my_data$Year), max = max(my_data$Year), value = c(2003, 2008),sep = "",)
    ),

    mainPanel(
      textOutput("DataTable")
    )
  )
)
server <- function(input, output) {

  output$DataTable <- renderTable({
    MSL <- my_data[input$range[1]:input$range[2],]
    MSL},include.rownames=FALSE)

}
shinyApp(ui, server)

我是R和R Shiny的新手。我目前正在尝试创建R Shiny应用,以在选定时段内的选定位置显示数据表中的各个年度平均海平面值。句号...

r shiny slider
1个回答
0
投票

这应该做:

© www.soinside.com 2019 - 2024. All rights reserved.