[英]How do you make a search bar to query a formattable table in a Shiny Dashboard
我在這里無法看到如何使用 esquisse 包來支持搜索欄功能。 我希望能夠通過名稱進行過濾。 例如,如果有人要搜索 setosa,它將返回一個子集化的格式化表。 我正在瀏覽 esquisse 包,但我不確定如何將它集成到 Shiny Dashboard 中。 看來我需要更改服務器中的輸出。
library(tidyverse)
library(janitor)
library(shinydashboard)
library(shiny)
library(formattable)
library(golem)
library(esquisse)
#Loading Dummy Data
data(iris)
summary(iris)
df <- iris
formattable(df)
ui <- dashboardPage(
dashboardHeader(title = "Title"),
dashboardSidebar(sidebarSearchForm(label = "Name", "searchText", "searchButton")),
dashboardBody(formattableOutput("table"))
)
server <- function(input, output) {
output$table <- renderFormattable({ formattable(df, align = c("l",rep("r", ncol(df))), list(
`Indicator Name` = formatter("span", style = ~ style(color = "grey",font.weight = "bold")),
area(col = 2:length(df)) ~ color_tile("#DeF7E9", "#71CA97")))})
}
shinyApp(ui = ui, server = server)
您可以使用as.datatable
,如下所示:
as.datatable(
formattable(blah blah blah)
)
此外,如果您想使用數據表選項和過濾器等,請使用它們,如下所示:
as.datatable(
formattable(blah blah blah)
,filter = 'top', rownames = FALSE)
請參見下面的例子:看到在何處放置datatable
編輯功能和在何處放置formattable
編輯功能:
as.datatable(
formattable(mydata,
align = c("l",rep("r", NCOL(mydata) - 1)),
list(`column_1` = formatter("span", style = ~ style(color = "grey", font.weight = "bold")),
`column_2` = formatter("span", style = ~ style(color = "blue")),
`column_3` = formatter("span", style = ~ style(color = "black")),
`column_4` = formatter("span", style = ~ style(color = "red", font.weight =
"bold"))
))
,filter = 'top', rownames = FALSE)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.