R闪亮不显示数据表

Posted

技术标签:

【中文标题】R闪亮不显示数据表【英文标题】:R shiny does not display datatable 【发布时间】:2014-05-13 21:31:20 【问题描述】:

我正在制作一个闪亮的应用程序,它显示带有数据库查询结果的数据表。 我使用内部包来检索数据,我确信它可以正常工作。

当我想显示其中一个 db 的数据表时,我没有问题,但是当我想显示另一个时,表根本不会出现。

我使用响应函数来检索数据并使用 renderDataTable() 来显示它。代码如下:

shinyServer(function(input, output) 
    dataset <- reactive(
    if(input$experiment!=""&!is.null(input$experiment))
      if(input$db=="db1")
        data <- querydb1(experimentID=input$experiment)
      
      if(input$db=="db2")
        data <- querydb2(experimentID=input$experiment)
      
    
  )



  # output table
  output$data <- renderDataTable(
    dataset()
  )
)

【问题讨论】:

如果您从 querydb.. 语句之前删除 data&lt;- 有帮助吗? 【参考方案1】:

你的响应式需要返回一些东西。试试这个:

if(input$experiment!=""&!is.null(input$experiment))
  if(input$db=="db1")
    data <- querydb1(experimentID=input$experiment)
  
  if(input$db=="db2")
    data <- querydb2(experimentID=input$experiment)
  
  return(data)

【讨论】:

感谢这个成功了,还是不明白为什么 db2 有效而 bd1 无效 默认情况下,R 返回表达式中最后评估的语句。所以你在技术上不需要最后调用return,你可以引用变量data。由于 db2 是最后评估的块,如果条件通过,则返回它。 db1data 从来都不是最后一个评估的语句,所以它永远不会被返回。

以上是关于R闪亮不显示数据表的主要内容,如果未能解决你的问题,请参考以下文章

DT 表未以闪亮显示

如何使 R 闪亮图形中的模式栏永久显示?

仅当绘图类型是条形图时才显示这些面板。 R 闪亮

在图表中选择活动跟踪并在 R 闪亮的数据表中显示

表格列的R闪亮鼠标悬停文本

R中闪亮的反应选择输入