我有一个闪亮的应用程序,我想在其中使用一些Radiant函数。[shiny][1]
应用程序中已经有一个数据集(它是反应性的),我希望将其作为默认值加载而不是diamonds
数据集。有没有简单的方法可以做到这一点?我想我必须做类似input$dataset<-RV$data
的事情,其中RV$data
是我想要的默认数据集。但是我将这段代码放在哪里?
我查看了初始化数据集的global.R
代码,这似乎可以检测到存储的文件:
df_names <- getOption("radiant.init.data", default = c("diamonds", "titanic"))
for (dn in df_names) {
if (file.exists(dn)) {
df <- load(dn) %>% get()
dn <- basename(dn) %>%
{gsub(paste0(".", tools::file_ext(.)), "", ., fixed = TRUE)}
} else {
df <- data(list = dn, package = "radiant.data", envir = environment()) %>% get()
r_info[[paste0(dn, "_lcmd")]] <- glue::glue('{dn} <- data({dn}, package = "radiant.data", envir = environment()) %>% get()\nregister("{dn}")')
}
env[[dn]] <- df
if (!bindingIsActive(as.symbol(dn), env = env)) {
makeReactiveBinding(dn, env = env)
}
r_info[[paste0(dn, "_descr")]] <- attr(df, "description")
}
r_info[["datasetlist"]] <- basename(df_names)
r_info[["url"]] <- NULL
r_info
}
但是,因为数据文件是在启动闪亮的应用程序之后创建的,所以我认为这部分代码无关紧要,因为它只是预加载了默认数据集。
然后我尝试查看是否可以将数据集添加到r_info
。
必须有一种直接的方法来加载闪亮的应用程序中已经存在的反应性数据集,而不必下载它们,然后使用应用程序的Radiant
部分重新上传它们。。