r语言 - 不支持的索引类型:NULL --> 以闪亮显示的绘图图表



我在绘图索引中使用 plotly 和 shiny 中的反应值时遇到错误。侧边栏面板加载没有问题,但显示图表时出现问题,我无法确定。任何帮助解决索引问题将不胜感激。谢谢!

library(shiny)
library(plotly)
data(economics, package = "ggplot2")

nms <- names(economics) 
ui <- fluidPage(
  headerPanel("TEST"),
  sidebarPanel(
    selectInput('x', 'X', choices = nms, selected = nms[[1]]),
    selectInput('y', 'Y', choices = nms, selected = nms[[2]]),
    sliderInput('plotHeight', 'Height of plot (in pixels)', 
                min = 100, max = 2000, value = 1000)
  ),
  mainPanel(
    plotlyOutput('trendPlot', height = "900px")
  )
)
server <- function(input, output) {
  #add reactive data information. Dataset = built in diamonds data
  dataset  <- reactive({economics[, c(input$xcol, input$ycol)]
  })
  output$trendPlot <- renderPlotly({
    # build graph with ggplot syntax
    p <- ggplot(dataset(), aes_string(x = input$x, y = input$y)) + 
      geom_line()

    ggplotly(p) %>% 
      layout(height = input$plotHeight, autosize=TRUE)
  })
}
shinyApp(ui, server)

警告:错误:不支持的索引类型:NULL

您错误地使用了xcolycol不知道为什么。如果没有这些名称,代码可以正常工作。

library(shiny)
library(plotly)
library(tidyverse)
data(economics, package = "ggplot2")

nms <- names(economics) 
ui <- fluidPage(
  headerPanel("TEST"),
  sidebarPanel(
    selectInput('x', 'X', choices = nms, selected = nms[[1]]),
    selectInput('y', 'Y', choices = nms, selected = nms[[2]]),
    sliderInput('plotHeight', 'Height of plot (in pixels)', 
                min = 100, max = 2000, value = 1000)
  ),
  mainPanel(
    plotlyOutput('trendPlot', height = "900px")
  )
)
server <- function(input, output) {
  #add reactive data information. Dataset = built in diamonds data
  dataset  <- reactive({
    economics[, c(input$x, input$y)]
  })
  output$trendPlot <- renderPlotly({

    # build graph with ggplot syntax
    p <- ggplot(dataset(), aes_string(input$x, input$y)) + 
      geom_line()

    ggplotly(p, height = input$plotHeight)
  })
}
shinyApp(ui, server)

最新更新