以下是我的data $Date和$DateTime为POSIXct格式的示例
# A tibble: 30,605 x 1
   cleandata$Date      $DateTime           $Site.Name   $DO $Salinity $Turbidity $Temperature
   <dttm>              <dttm>              <fct>      <dbl>     <dbl>      <dbl>        <dbl>
 1 2019-07-17 00:00:00 2019-07-17 11:30:00 SOUTHREF   107        36.0       0.6          8.20
 2 2019-07-17 00:00:00 2019-07-17 12:00:00 DIFF B      96.1      35.5       1.05        25.5 
 3 2019-07-17 00:00:00 2019-07-17 12:00:00 SOUTHREF    99.7      36.1       0.63         8.25
 4 2019-07-17 00:00:00 2019-07-17 12:30:00 DIFF B      96.8      35.5       1.19        25.5 
 5 2019-07-17 00:00:00 2019-07-17 12:30:00 SOUTHREF    99.5      36.0       0.66         8.01
 6 2019-07-17 00:00:00 2019-07-17 13:00:00 DIFF B      98        35.5       0.93        25.5 
 7 2019-07-17 00:00:00 2019-07-17 13:00:00 SOUTHREF   100        36.1       0.62         7.56
 8 2019-07-17 00:00:00 2019-07-17 13:30:00 DIFF B      96.6      35.5       1.02        25.5 
 9 2019-07-17 00:00:00 2019-07-17 13:30:00 SOUTHREF    99.8      36.1       0.73         6.95
10 2019-07-17 00:00:00 2019-07-17 14:00:00 DIFF B      98.6      35.4       0.99        25.5 下面是我出色的ui和服务器脚本
ui<-fluidPage(
  # Application title
  titlePanel("Dashboard"),
  sidebarLayout(
    # Sidebar with a slider and selection inputs
    sidebarPanel(
      selectInput("variable", "Variables",
                  choices = c("DO","Salinity","Turbidity","Temperature")),
      hr(),
      selectInput("site","Sites",
                  choices =levels(cleandata$Site.Name)),
      hr(),
      sliderInput("slider_date", "Date:",
                    min = min(cleandata$DateTime),
                     max = max(cleandata$DateTime),
                  value = min(cleandata$DateTime))
    ),
    mainPanel(
      plotOutput("quality")
    )
  )
)
server <- function(input, output) {
  plotdata <- reactive({
    cleandata %>%
      select(Date, DateTime, Site.Name,!!!input$variable) %>% 
      filter(cleandata, DateTime >= input$slider_date[1], DateTime <= input$slider_date[2]) %>%
      filter(cleandata, Site.Name == input$site)
    return(cleandata)
      })
  output$quality <- renderPlot({
    plot(plotdata()$DateTime,plotdata()[input$variable])
  })
}
shinyApp(ui = ui, server = server)当我运行应用程序而不是绘图时,我收到错误消息Error:'&‘not defined for "POSIXt“objects。
我不确定发生了什么,我没有任何POSIXt对象,只有POSIXct和我在我的脚本中根本没有使用&符号,但似乎这是导致错误的原因。
任何帮助都将不胜感激
发布于 2019-11-26 15:35:05
有几个元素不起作用:
return(cleandata)现在它应该可以工作了。
library(shiny)
library(lubridate)
library(dplyr)
ui<-fluidPage(
  # Application title
  titlePanel("Dashboard"),
  sidebarLayout(
    # Sidebar with a slider and selection inputs
    sidebarPanel(
      selectInput("variable", "Variables",
                  choices = c("DO","Salinity","Turbidity","Temperature")),
      hr(),
      selectInput("site","Sites",
                  choices =levels(cleandata$Site.Name)),
      hr(),
      sliderInput("slider_date", "Date:",
                  min = min(cleandata$DateTime),
                  max = max(cleandata$DateTime),
                  value = c(min(cleandata$DateTime),max(cleandata$DateTime)))
    ),
    mainPanel(
      plotOutput("quality")
    )
  )
)
server <- function(input, output) {
  plotdata <- reactive({
    cleandata %>%
      select(Date, DateTime, Site.Name,!!!input$variable) %>% 
      filter(DateTime >= input$slider_date[1], DateTime <= input$slider_date[2]) %>%
      filter(Site.Name == input$site)
  })
  output$quality <- renderPlot({
    plot(plotdata()$DateTime,plotdata()[[input$variable]])
  })
}
shinyApp(ui = ui, server = server)https://stackoverflow.com/questions/59045600
复制相似问题