同一闪亮页面上的两个wordcloud2

时间:2019-03-01 11:04:39

标签: r shiny wordcloud2

我正在尝试将两个wordcloud2放在我闪亮的dahboard中,而第二个没有显示

当我检查页面时,它们都在体内

enter image description here

我的脚本

library(wordcloud2)
library(shinydashboardd)
# Global variables can go here
n <- 1

# Define the UI
ui <- dashboardPage(
   box(wordcloud2Output('wordcloud2')),
   box(wordcloud2Output('wordcloud3'))
)


# Define the server code
server <- function(input, output) {
  output$wordcloud2 <- renderWordcloud2({
    wordcloud2(demoFreq)
  })

  output$wordcloud3 <- renderWordcloud2({
    wordcloud2(demoFreq)
  })

}
shinyApp(ui = ui, server = server)

编辑: 当我使用答案脚本时进行屏幕截图,没有第二个wordcloud

enter image description here

带有wordcloud div的

html输出

<!DOCTYPE html>
<html>
<head>

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <script type="application/shiny-singletons"></script>
  <script type="application/html-dependencies">json2[2014.02.04];jquery[1.12.4];shiny[1.2.0];htmlwidgets[1.3];wordcloud2[0.0.1];wordcloud2-binding[0.2.1];bootstrap[3.3.7]</script>
<script src="shared/json2-min.js"></script>
<script src="shared/jquery.min.js"></script>
<link href="shared/shiny.css" rel="stylesheet" />
<script src="shared/shiny.min.js"></script>
<script src="htmlwidgets-1.3/htmlwidgets.js"></script>
<link href="wordcloud2-0.0.1/wordcloud.css" rel="stylesheet" />
<script src="wordcloud2-0.0.1/wordcloud2-all.js"></script>
<script src="wordcloud2-0.0.1/hover.js"></script>
<script src="wordcloud2-binding-0.2.1/wordcloud2.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link href="shared/bootstrap/css/bootstrap.min.css" rel="stylesheet" />
<script src="shared/bootstrap/js/bootstrap.min.js"></script>
<script src="shared/bootstrap/shim/html5shiv.min.js"></script>
<script src="shared/bootstrap/shim/respond.min.js"></script>

</head>

<body>
  <div class="container-fluid">
    <div id="wordcloud2" style="width:100%; height:400px; " class="wordcloud2 html-widget html-widget-output"></div>
    <div id="wordcloud3" style="width:100%; height:400px; " class="wordcloud2 html-widget html-widget-output"></div>
  </div>
</body>

</html>

在此屏幕截图中没有任何可行性;在第二个wordcloud上继承

enter image description here

1 个答案:

答案 0 :(得分:1)

我没有遇到任何问题。我无法运行您的代码,因为它存在一些错误(您写了shinydashboardd而不是shinydashboard,并且您的UI无法运行,因为dashboardPage()函数不能占用两个框是参数),但如果我只是解决这些错误,它就可以正常工作:

library(wordcloud2)
library(shiny)

ui <- fluidPage(
        wordcloud2Output('wordcloud2'),
        wordcloud2Output('wordcloud3')
)

server <- function(input, output) {
        output$wordcloud2 <- renderWordcloud2({
                wordcloud2(demoFreq)
        })

        output$wordcloud3 <- renderWordcloud2({
                wordcloud2(demoFreq)
        })
}

shinyApp(ui = ui, server = server)

(将来,在发布带有代码的问题之前,请确保所提供的代码可以运行,除非问题出在代码本身)