我正在尝试在Shiny Dashboard中创建一个wordcloud。单选按钮控制和所有其他工作正常,除了wordcloud的输出显示在R Studio内部的查看窗格中,而不是在闪亮的应用程序中。
对Shiny编程很新,并尝试在server.R中使用renderPlot和reactivePlot
有人知道为什么吗?
以下是我的代码的快照
shinyUI(dashboardPage(
# DASHBOARD HEADER
dashboardHeader(title = "ABC Classification"),
# DASHBOARD SIDEBAR
dashboardSidebar(
sidebarMenu(
menuItem("Word Cloud", tabName = "wordcloud")
)
),
dashboardBody(
tabItems(
tabItem(tabName = "wordcloud",
fluidRow(
box(title = "Select option", radioButtons("radio_buttons", "A", "B", "C" choices = c("A", "B", "C"))),
box(title = " Word Cloud ", plotOutput("word_cloud"))
)
)
)
)
shinyServer(function(input, output) {
output$word_cloud = renderPlot(
if (input$radio_buttons == "A"){
wordcloud2(cloud_a)
}else if (input$radio_buttons == "B"){
wordcloud2(cloud_b)
}else if (input$radio_buttons == "C"){
wordcloud2(cloud_c)
}
)
})
答案 0 :(得分:0)
首先,请分享您的cloud_a
等数据,以便我们重现您的示例。我现在从帮助页面中提供一个例子。
您唯一的错误是,您应该使用wordcloud2Output
代替plotOutput
和renderWordcloud2
代替renderPlot
。有了它,它工作正常。最小的例子:
library(wordcloud2)
shinyApp(shinyUI(
fluidPage(wordcloud2Output("word_cloud"))),
shinyServer(function(input, output) {
output$word_cloud = renderWordcloud2({
wordcloud2(demoFreq)
})
})
)
感谢您指向该软件包,我不知道它,但我喜欢它!