用一些包编写的代码在 renderPlot 函数

问题描述

一些包的 plot 函数,如 timetk、plot_ly 不会产生写在 renderPlot 函数中的 plot(output)。尽管当我在控制台中运行它时,同一段代码会返回输出(绘图)。而像 plot() 这样的函数,ggplot() 也可以完成这项工作。 为什么会这样?

这段带有 timetk 库的代码在 rstudio 控制台中提供输出

dataset %>%
      plot_time_series(.date_var = Year,.value = column1,.interactive = TRUE,.y_lab = "Amt",.x_lab = "Year",)

但是如果在 renderPlot 函数中写了同样的一块,它不会在 RShiny 应用程序上提供输出,只会显示一个空白的白屏。

UI:UI 代码都很好。我也写了一个 plotOutput("p1") 。

服务器:

output$p1 <- renderPlot({ 
dataset %>%
      plot_time_series(.date_var = Year,)
})

解决方法

问题是(曾经)renderPlotplotOutput 用于基本图或ggplot。当您想要制作交互式 plotly 图表时,您必须使用 plotly::renderPlotlyplotly::plotlyOutput

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...