GGR曲线图的结果
为什么ggplot的输出绘图没有显示在输出中?以下代码有什么问题?它不会产生任何错误,但它会在ui中显示ggplot图。在r中,数据流非常困难,因为我是初学者 用户界面 服务器.RGGR曲线图的结果,r,plot,ggplot2,shiny,visualization,R,Plot,Ggplot2,Shiny,Visualization,为什么ggplot的输出绘图没有显示在输出中?以下代码有什么问题?它不会产生任何错误,但它会在ui中显示ggplot图。在r中,数据流非常困难,因为我是初学者 用户界面 服务器.R library(DT) library(shiny) library(alphavantager) library(ggplot2) data <- function(stock_name="",days_history){ av_api_key("YOUR_API_KEY") sri <- d
library(DT)
library(shiny)
library(alphavantager)
library(ggplot2)
data <- function(stock_name="",days_history){
av_api_key("YOUR_API_KEY")
sri <- data.frame(av_get(symbol = stock_name, av_fun = "TIME_SERIES_DAILY", interval = "15min", outputsize = "compact"))
sri
}
visualization <- function(sri){
high_vis <- ggplot(aes(x = timestamp, y = high),data = sri) + geom_freqpoly(stat = "identity") +
labs(title = "High price vs Time",x = "Timeline in months",y = "Share price - High") +
theme_classic(base_size = 20)
high_vis
}
shinyServer(function(input, output) {
output$data_table <- renderDataTable({data(input$stock_name,input$stock_history)})
output$plot_high <- renderPlot({visualization(data_table)})
})
库(DT)
图书馆(闪亮)
图书馆(alphavantager)
图书馆(GG2)
数据这应该有效
替换
- 通过ui.R中的
plotOutput(“plot\u high”)
绘制渲染图(“plot\u high”)
可视化(数据表)
by
可视化(数据(stock\u name=input$stock\u name,input$stock\u history))
在server.R中DT::dataTableOutput(“数据表”)
中的DT::
。出于某种原因,DT
包中的dataTableOutput
函数对我不起作用(因此我使用了相同的函数,但直接来自DT
)
编辑
您可以将shinyServer
改写为:
shinyServer(function(input, output) {
data_table <- reactive({data(stock_name=input$stock_name, input$stock_history)})
output$data_table <- renderDataTable({data_table()})
output$plot_high <- renderPlot({visualization(data_table())})
})
shinyServer(功能(输入、输出){
数据表您是否尝试过打印对象,例如,print(high\u vis)
?是的,我尝试过打印它了!!谢谢:),days\u history变量是为将来使用而设计的!但是为什么我们不能使用data\u table
而不是数据(stock\u name=input$stock\u name,input$stock\u history)
…问题的原因是什么?我不明白,因为数据表
是一个输出。我用shinyServer
的建议编辑了答案,您可能会发现更清楚。现在我可以理解了
shinyServer(function(input, output) {
data_table <- reactive({data(stock_name=input$stock_name, input$stock_history)})
output$data_table <- renderDataTable({data_table()})
output$plot_high <- renderPlot({visualization(data_table())})
})