使用闪亮动作按钮在两个表之间循环

问题描述 投票:0回答:1

问题:

我有一个闪亮的仪表板,我在那里展示一张桌子。关于可重现的示例,请考虑任何基本表输出。我的表目前显示某些指标的绝对数量。我想按一个操作按钮,将视图更改为显示百分比的表。

我的问题:

使用操作按钮在两个不同的表输出之间循环的适当语法是什么?

我很好奇我是否可以实现以下方面:

ui <- fluidPage(
  output$table,
  actionButton("do", "Click Me")
)

server <- function(input, output, session) {
  observeEvent(input$do, {
    table_1 # table 1 loads normally
    table_2 # table 2 loads upon button click
  })
}
r shiny dt
1个回答
1
投票

以下是如何使用mtcars执行此操作的示例。

library(shiny)
ibrary(tidyverse)
ui <- fluidPage(
    tableOutput("tbl"),
    actionButton("do", "Click Me")
)

server <- function(input, output, session) {
    vals <- reactiveValues(data = {
        mtcars %>% rownames_to_column() %>% select(rowname, mgp_exact = mpg) %>% head()
    })
    output$tbl <- renderTable({vals$data})
    observeEvent(input$do, {
        if(input$do %% 2 == 1){
            vals$data <- vals$data %>% mutate(mgp_exact = mgp_exact/max(mgp_exact)*100) %>% rename(mpg_pct = mgp_exact)
        }
        else{
            vals$data <- mtcars %>% rownames_to_column() %>% select(rowname, mgp_exact = mpg) %>% head()
        }
    })
}

shinyApp(ui, server)

我写了它,以便do按钮在百分比和原始之间切换。

© www.soinside.com 2019 - 2024. All rights reserved.