我正在使用Java(后端)和javascript构建Web应用程序。在某些时候,我的应用程序从远程数据库检索一些特定的数据。我想在我的网络应用程序中嵌入一个闪亮的应用程序,以读取,分析和可视化此数据。检索到的数据取决于用户与我的应用程序的交互。
所以基本上,我试图将数据发送到一个闪亮的应用程序(可能使用REST)。这可能吗?
答案 0 :(得分:2)
当然可以! R Shiny应用程序可以以与任何Web应用程序相同的方式接收数据。例如。它可以运行一个内部计时器,以从API获取数据,从Web抓取数据或访问数据库。
一些建议
plumber
包将是一个很好的起点两个最常用的抓取软件包是rvest
和(Hadley Wickham's)httr
。这是访问API或从网络上的任何地方抓取原始数据的好起点
如果要连接到数据库,我建议先确定要使用的数据库,然后使用R谷歌搜索如何连接到数据库。成功后,可以在Shiny应用程序中移动该代码!
答案 1 :(得分:0)
只需添加一个示例:如果您想:
plumber
httr
使用httr
在Shiny中加载一些JSON数据(从 OpenCPU )的最小示例:
library(shiny)
library(httr)
library(dplyr)
ui <- fluidPage(
tableOutput("tbl")
)
server <- function(input, output, session) {
output$tbl <- renderTable( {
# GET request from an API
req <- httr::GET(url = "cran.ocpu.io/ggplot2/data/msleep/json")
req_parsed <- httr::content(req, type = "application/json")
# Convert to data.frame
dplyr::bind_rows(req_parsed)
})
}
shinyApp(ui, server)