Using gt_output()
we can render a reactive gt table, a process
initiated by using render_gt()
in the server
component of a
Shiny app. gt_output()
is to be used in the Shiny
ui
component, the position and context wherein this call is made determines
the where the gt table is rendered on the app page. It's important to
note that the ID given during render_gt()
is needed as the outputId
in
gt_output()
(e.g., server: output$<id> <- render_gt(...)
; ui:
gt_output(outputId = "<id>")
).
Examples
Here is a Shiny app (contained within a single file) that (1) prepares a
gt table, (2) sets up the ui
with gt_output()
, and (3) sets up the
server
with a render_gt()
that uses the gt_tbl
object as the input
expression.
library(shiny)
gt_tbl <-
gtcars |>
gt() |>
fmt_currency(columns = msrp, decimals = 0) |>
cols_hide(columns = -c(mfr, model, year, mpg_c, msrp)) |>
cols_label_with(columns = everything(), fn = toupper) |>
data_color(columns = msrp, method = "numeric", palette = "viridis") |>
sub_missing() |>
opt_interactive(use_compact_mode = TRUE)
ui <- fluidPage(
gt_output(outputId = "table")
)
server <- function(input, output, session) {
output$table <- render_gt(expr = gt_tbl)
}
shinyApp(ui = ui, server = server)
See also
Other Shiny functions:
gt_update_select()
,
render_gt()