闪亮错误:在条形图中需要有限的'xlim'值

时间:2017-05-06 01:56:32

标签: r shiny bar-chart

我正在制作我的第一个Shiny应用程序,尝试创建一个响应式条形图和表格,用户可以在其中选择要显示的数据框列,但是,当我运行应用程序时

  

错误:需要出现有限'xlim'值

我的数据不包含NA,它是一个数据帧,我可以使用普通的r命令构建非反应图。

我的代码看起来像这样

library(shiny)
ui <- fluidPage( 
  plotOutput(outputId = "bar_1"),
  tableOutput(outputId = "table_1"),
  selectInput("variable", "Select variable", c("colA"="colA", "colB"="colB", "colC"="Col C")) 
)  

server <- function(input, output) {
  output$bar_1<-renderPlot(barplot(table(Book1$'input$variable'))) 
  output$table1<-renderTable(table(Book1$'input$variable'))
}

shinyApp(ui = ui, server = server)

控制台显示

Warning in min(w.l) : no non-missing arguments to min; returning Inf
Warning in max(w.r) : no non-missing arguments to max; returning -Inf
Warning in min(x) : no non-missing arguments to min; returning Inf
Warning in max(x) : no non-missing arguments to max; returning -Inf
Warning: Error in plot.window: need finite 'xlim' values
Stack trace (innermost first):
    79: plot.window
    78: barplot.default
    77: barplot
    76: renderPlot
    68: output$bar_1
     1: runApp

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

对于最小可重复的示例,同样具有dput(head(Book1))的输出也是有帮助的。 这样就更容易提供帮助

但在你的情况下,它似乎是列的索引。尝试以下

server <- function(input, output) {
  output$bar_1<-renderPlot(barplot(table(Book1[input$variable]))) 
  output$table1<-renderTable(table(Book1[input$variable]))
}

或更高效

server <- function(input, output) {
  current.data <- table(Book1[input$variable])
  output$bar_1<-renderPlot(barplot(current.data)) 
  output$table1<-renderTable(current.data)
}