我正在写一个闪亮的应用程序,我想使用格式化来着色一些条件下的结果。我遵循了here 和here 提供的解决方案,但这些解决方案都不起作用。令人费解的是,下面的示例没有对结果进行着色(至少对我来说是这样),尽管显示了该表:
library(DT)
library(shiny)
library(shinydashboard)
library(data.table)
library(formattable)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
tabsetPanel(box(formattableOutput("dat"))
)
)
)
server <- function(input, output) {
data <- head(mtcars)
output$dat <- renderFormattable({
formattable(data,
disp = formatter("span",
style = x ~ style(color = ifelse(x < 200, "green", "gray")))
)
})
}
shinyApp(ui, server)有人有解决方案吗?
发布于 2019-06-20 01:03:53
这个答案来自KoderKow (https://community.rstudio.com/t/r-shiny-formattable-does-not-change-anything/33465):
formattable()中data后面的参数需要一个list,我们需要做的就是将disp包装在list()函数中。下面是可用的代码!
library(DT)
library(shiny)
library(shinydashboard)
library(data.table)
library(formattable)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
tabsetPanel(box(formattableOutput("dat"))
)
)
)
server <- function(input, output) {
data <- head(mtcars)
output$dat <- renderFormattable({
formattable(data, list(
disp = formatter("span",
style = x ~ style(color = ifelse(x < 200, "green", "gray")))
))
})
}
shinyApp(ui, server)它现在起作用了
https://stackoverflow.com/questions/56622110
复制相似问题