【问题标题】:R shiny output 0 record table show 'no record'R闪亮输出0记录表显示'无记录'
【发布时间】:2020-05-23 05:24:51
【问题描述】:

我正在创建一个具有表格输出的闪亮应用程序。 当表中没有记录时,我想让 UI 显示“无记录”。

有什么建议吗?

您可以更改此代码以进行演示:

ui <- fluidPage(

  titlePanel("INFOMATION CHECKING TOOL"),

  # Sidebar layout with input and output definitions ----
  mainPanel(


    h4("Records Sepal.Length bigger than 7.9", align = "center"),
    tableOutput("table"),
    br(),
    br()

  )
)  

# define server() function
server <- function(input, output){


  output$table <- renderTable({


    iris %>% filter(Sepal.Length>7.9)

  })

}

# call to shinyApp() which returns the Shiny app
shinyApp(ui = ui, server = server)

【问题讨论】:

  • 在这个例子中使用validate怎么样:stackoverflow.com/a/43934495/3460670
  • 您好,感谢您提供的信息。似乎不对。验证是验证输入数据集是否为空。我的输入是正确的,但只是由于“过滤器”,输出为空。如果在 R markdown 中使用相同的东西,我会看到“0 行”。我想在闪亮中显示相同的“0 行”。
  • 您查看过@bretauv 的回答吗?你试过了吗?如果这不能满足您的需求,请进一步澄清您的问题以进行解释。

标签: r shiny


【解决方案1】:

正如@Ben 所说,您也可以在数据帧上使用验证,而不仅仅是在输入上。

output$table <- renderTable({

    data_test <- iris %>% 
      filter(Sepal.Length>7.9)

    validate(
      need(nrow(data_test) > 0,
           "No record"
      )
    )

    data_test

  })

请参阅here 以自定义validate 消息(字体、颜色等)。

【讨论】:

    猜你喜欢
    • 2020-01-24
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-04
    • 2023-04-06
    • 2016-03-10
    相关资源
    最近更新 更多