2016-08-30 13 views
1

私はLDAvisバージョン0.3.1に付属している光沢のある統合を利用しようとしています。 githubの(https://github.com/cpsievert/LDAvis/tree/master/inst/examples/shiny)に与えられた例は次のとおりです。光沢のあるLDAvisの統合

library(LDAvis) 
library(shiny) 

server <- shinyServer(function(input, output, session) { 
    output$myChart <- renderVis({ 
    with(TwentyNewsgroups, 
     createJSON(phi, theta, doc.length, vocab, term.frequency, 
        R = input$nTerms))}) 
}) 

ui <- shinyUI(
    fluidPage(
    sliderInput("nTerms", "Number of terms to display", min = 20, max = 40, value = 30), 
    visOutput('myChart') 
) 
) 

shinyApp(ui = ui, server = server) 

このアプリは、しかし、任意の出力をレンダリングしていないので、私は少し困惑しています。 LDAvisを光沢のあるアプリに統合する方法の最小限の例を教えてもらえますか?

+0

私はこれを試してみました。 'visOutput'を' textOutput'と 'renderVis'で' renderText'に置き換えると、期待通りに動作します。それ以外の場合、サーバーメソッドは入力変更に反応しません。私の推測は、それがLDAvisパッケージ自体と関係しているということです。 – nilsole

答えて

1

このコードは私のマシンで動作しましたが、まだjavascriptには時間がかかります(約20秒)。これはあなたを助けますか?

library(shiny) 
library(LDAvis) 

data(TwentyNewsgroups, package = "LDAvis") 
ui <- shinyUI(
    fluidPage(
    sliderInput("nTerms", "Number of terms to display", min = 20, max = 40, value = 30), 
    visOutput('myChart') 
) 
) 

server <- shinyServer(function(input, output, session) { 
    output$myChart <- renderVis({ 
    if(!is.null(input$nTerms)){ 
     with(TwentyNewsgroups, 
      createJSON(phi, theta, doc.length, vocab, term.frequency, 
         R = input$nTerms)) 


    } 
      }) 
}) 

shinyApp(ui = ui, server = server) 

enter image description here

+0

それは反応しますが、プラグインが非常に "重い"ように見えるので、これは時間がかかります。代わりに、アクションボタンを含めることができる(すなわち、入力を分離する)。 – nilsole

+0

答えをありがとう。 – Chris

関連する問題