gpt4 book ai didi

r - 如何使用 shinydashboardPlus 的轮播实现动态数量的幻灯片?

转载 作者:行者123 更新时间:2023-12-04 15:08:08 25 4
gpt4 key购买 nike

我希望使用 shinydashboardPlus 的轮播来显示多个图表。这些图表的数量每天从一张到十张不等。

cron 作业每天运行 R 脚本。

这是一个工作示例,其中包含固定数量的幻灯片,三张。

library(shiny)
library(shinydashboard)
library(shinydashboardPlus)

chart_names <- c( "http://placehold.it/900x500/39CCCC/ffffff&text=Slide+1",
"http://placehold.it/900x500/39CCCC/ffffff&text=Slide+2",
"http://placehold.it/900x500/39CCCC/ffffff&text=Slide+3")


ui <- dashboardPagePlus(

header = dashboardHeaderPlus(disable = TRUE ),
sidebar = dashboardSidebar(width = 0 ),


body = dashboardBody(
carousel(indicators = TRUE,
id = "mycarousel",
carouselItem(
tags$img(src = chart_names[1])
),
carouselItem(
tags$img(src = chart_names[2])
),
carouselItem(
tags$img(src = chart_names[3])
)
)
)
)

server <- function(input, output, session) {}

shinyApp(ui, server)

这是可以使用 do.call 的示例吗?

constructs and executes a function call from a name or a function and a list of arguments to be passed to it.

这次尝试:

do.call(carousel, as.list(c(id = "mycarousel", "carouselItem(tag$img(src = chart_names[1])")))

导致此错误:

错误:$ 运算符对于原子向量无效

如何以编程方式将以前未知数量的幻灯片添加到 shinydashboardPlus 轮播?

最佳答案

答案在带有 .list 参数 ?carousel 的文档中

library(shiny)
library(shinydashboard)
library(shinydashboardPlus)

nb_items = 5

items = Map(function(i) {carouselItem(
tags$img(src = paste0("http://placehold.it/900x500/39CCCC/ffffff&text=Slide+", i))
)}, 1:5)


ui <- dashboardPagePlus(

header = dashboardHeaderPlus(disable = TRUE ),
sidebar = dashboardSidebar(width = 0 ),


body = dashboardBody(
carousel(indicators = TRUE,
id = "mycarousel",
.list = items
)

)
)

server <- function(input, output, session) {}

shinyApp(ui, server)

关于r - 如何使用 shinydashboardPlus 的轮播实现动态数量的幻灯片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65695718/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com