gpt4 book ai didi

R/Shiny 图不显示在浏览器中

转载 作者:行者123 更新时间:2023-12-04 10:46:44 25 4
gpt4 key购买 nike

我最近开始玩 Shiny。我试图写一些东西来证明中心极限定理。我的代码如下:

用户界面:

#****************************************ui.R file code*****************************

library(shiny)
shinyUI(pageWithSidebar(headerPanel("Central Limit Theorem"),
sidebarPanel(selectInput("Distribution",
"Distribution:",
list("normal", "lognormal")),
br(),
sliderInput("sam_size",
"Sample size:",
min = 5,
max = 500,
value = 5)
),
mainPanel(tabPanel("Plot", plotOutput("plot")))
))

服务器.R:
#****************************************server.R file code**************************
library(shiny)
shinyServer(function(input, output){
data <- reactive(function(){Distribution <- switch(input$Distribution,
normal = rnorm,
lognormal = rlnorm,
rnorm
)
Distribution(input$sam_size*2000)})

output$plot <- reactive(function(){
Distribution <- input$Distribution
sam_size <- input$sam_size
temp <- matrix(data(), ncol=2000)
xbars <- colMeans(temp)
hist(xbars, main=paste("Sampling Distribution of the Mean Based on a", Distribution,
"distribution with n =", sam_size))})
})

当我尝试使用 runApp() 运行代码时,下面是我得到的。如您所见,该图未显示。

enter image description here

奇怪的是,当我回到我的 Rstudio 并按“Esc”退出应用程序时,我的 Rstudio 中显示的图如下所示:

enter image description here

我想知道是否有人知道我的代码有什么问题。谢谢!!

最佳答案

你想用 reactivePlot(...) 包装你的绘图函数,而不仅仅是 reactive(...) .

一般来说,reactive(...)应该用于您的服务器中提供 input 的辅助函数-相关数据到 output职能。实际生成 output 的函数然而,对象应该用专门的 react 函数包装,例如 reactiveText , reactivePrint , reactiveTable , 和 reactivePlot .

关于R/Shiny 图不显示在浏览器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13904212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com