使用flexdashboard可以创建交互式的仪表盘应用,其中包括了一个DT(DataTables)组件,可以实现表格的展示和交互功能。在这个应用中,获取点击的DT索引可以通过以下步骤实现:
install.packages("flexdashboard")
rmarkdown::draft("my_dashboard.Rmd", template = "flex_dashboard", package = "flexdashboard")
---
title: "My Dashboard"
output:
flexdashboard::flex_dashboard:
orientation: rows
---
```{r setup, include=FALSE}
library(flexdashboard)
library(DT)
# 创建一个包含点击事件的DT表格
datatable(iris, options = list(
initComplete = JS(
"function(settings, json) {",
" table.on('click.dt', 'tr', function() {",
" var index = table.row(this).index();",
" Shiny.setInputValue('clicked_index', index);",
" });",
"}")
))
# 输出点击的索引
renderText({
input$clicked_index
})
这段代码创建了一个包含点击事件的DT表格,并在点击事件发生时将点击的索引值传递给Shiny应用的输入变量clicked_index
。然后,使用renderText
函数将点击的索引值输出到仪表盘中。
rmarkdown::render("my_dashboard.Rmd")
这样,就可以使用flexdashboard在闪亮的应用中获取点击的DT索引了。
关于flexdashboard和DT的更多信息,可以参考以下链接:
领取专属 10元无门槛券
手把手带您无忧上云