发光和ggvis强制observe()在bind_shiny()之前解决

时间:2014-08-21 17:00:38

标签: r shiny ggvis

我有一些父(系统)和子(组)形式的分层数据。在闪亮的我有两组单选按钮,一组用于系统,一组用于组。因此我使用observe()语句将组单选按钮更新为仅存在于所选系统的按钮:

observe({
  r_options <- list()
  groups <- unique(fulldata$group[fulldata$system=input$system])
  updateRadioButtons(session,"group","Group",choices=groups,selected=paste(groups[1]))
},priority=100)

最初,我刚刚在我的server.R文件中使用了renderPlot,它产生了一个vanilla R图。当我对系统进行更改时,会暂时弹出错误Error: dims [product 1] do not match the length of object [0]代替图表,然后它将被新图表替换。

现在我正在尝试用ggvis图替换图形,因此renderPlot已被替换为被动(存储在对象vis中),最终构建了一个ggvis图和最后一行:

vis %>% bind_shiny("mychart")

现在,应用程序崩溃并向控制台输出相同的错误消息。 我已经尝试编写代码,其中反应存储图形所需的数据,然后在反应元素ala之外调用整个ggvis块:

fon = reactive({...})
fon %>%
  ggvis(~date,~value,stroke=~type) %>%
  layer_lines() %>%
  bind_shiny("mychart")

我不知道为什么这会导致一个惊人的失败而不是一个友好的音符,但我的主要兴趣是知道如何去除最后一行的优先顺序,以便在观察声明之后它才会执行完成了?或者,当输入被动地改变时,是否有更好的方法来输出ggvis?

0 个答案:

没有答案