R刷新几页后才显示绘图

R刷新几页后才显示绘图,r,shiny,R,Shiny,我是Shiny的新手,一直在开发一个显示绘图图表的web应用程序;我还在本地机器上开发这个应用程序。当我在打开RGui后第一次运行应用程序时,web应用程序会运行,但不会呈现图表,即使在我单击“绘制”按钮之后也是如此。我必须刷新网页一两次,然后图表将呈现。图表呈现后,问题在R会话期间消失。刷新页面或重新启动Shining程序将继续呈现图表,直到RGui关闭。当我下次打开RGui并运行应用程序时,这个问题就会再次出现 我在shiny和failed rendering上搜索的所有现有问题和答案都没有

我是Shiny的新手,一直在开发一个显示绘图图表的web应用程序;我还在本地机器上开发这个应用程序。当我在打开RGui后第一次运行应用程序时,web应用程序会运行,但不会呈现图表,即使在我单击“绘制”按钮之后也是如此。我必须刷新网页一两次,然后图表将呈现。图表呈现后,问题在R会话期间消失。刷新页面或重新启动Shining程序将继续呈现图表,直到RGui关闭。当我下次打开RGui并运行应用程序时,这个问题就会再次出现

我在shiny和failed rendering上搜索的所有现有问题和答案都没有回答我的问题

在几次试图找出程序中的错误的失败尝试后,我将其归结为以下代码(在我看来)看起来应该是功能性的,但仍然存在问题:

library(shiny)
library(plotly)

ui = fluidPage(
  plotlyOutput("Plot"),
  actionButton("drawPlotButton", "Draw")
)

server = function(input, output)
{
  output$Plot = renderPlotly({
    input$drawPlotButton
    return(plot_ly(mtcars, x = ~hp, y = ~mpg, type = "scatter", mode = "markers"))
  })
}

shinyApp(ui = ui, server = server)

我不知道我是否遗漏了一些简单的东西。非常感谢所有帮助。

通常对我来说运行良好,就像初始化时的绘图渲染一样。 但是,如果您的目标是仅在单击“绘制”按钮时绘制图形,则:

您需要添加一个
eventReactive
方法

库(闪亮)
图书馆(绘本)
ui=fluidPage(
绘图输出(“绘图”),
动作按钮(“绘图按钮”、“绘图”)
)
服务器=功能(输入、输出)
{

绘图此代码在我的机器上运行正常,使用
Rstudio版本1.2.1114、R版本3.5.0(我应该很快更新)、Shining\u 1.2.0和plotly\u 4.9.0
。您正在运行什么版本?您可以运行
sessionInfo()
查找out@JonnyPhelps我正在运行
R版本3.5.3
plotly_4.9.0
、和
shinny_1.3.2
,因为他的答案中的@RK1也没有问题,我想知道我的设置是否有故障……这可能只是gui的问题。在Rstudio中,你可以要求在浏览器中打开它。也许可以探索一下如果您尝试更改查看应用程序的内容是一个问题,而
eventReactive
是我不知道的事情,这里的主要问题只是在初始化时未呈现绘图。由于您没有遇到此问题,我想知道为什么我的设置可能会被破坏。谢谢!酷,@JonnyPhelps的观点是正确的,wo在浏览器中查看应用程序并查看错误是否仍然发生
library(shiny)
library(plotly)

ui = fluidPage(
  plotlyOutput("Plot"),
  actionButton("drawPlotButton", "Draw")
)

server = function(input, output)
{
  plot_d <- eventReactive(input$drawPlotButton, {
    plot_ly(mtcars, x = ~hp, y = ~mpg, type = "scatter", mode = "markers")
  })

  output$Plot = renderPlotly({
    plot_d()
  })
}

shinyApp(ui = ui, server = server)