Проблема с сервером. R: не удается правильно использовать наблюдайте в действии. - PullRequest
0 голосов
/ 17 апреля 2020

Я относительно новичок в блестящем приложении и пытаюсь сделать простое приложение: хотя я могу правильно запустить ui.R, у меня проблемы с сервером. R ...... я хочу взять значение ползунка «post» (это число будет использоваться как аргумент функции «wbpg»), выберите тип графика из выпадающего меню и нанесите соответствующую переменную при нажатии кнопки действия «RUN» ..... все результаты и графики сохраняются, когда функция с именем "wbpg (x)" (где "x" - это значение ползунка) ... когда запускается wbpg (x), она возвращает графики (содержит список всех графиков) в раскрывающемся меню)

#UI.R
shinyUI( fluidPage(
  titlePanel(title=h4("Text Mining on  thread",align="centre")),

sidebarLayout(
    sidebarPanel(
  sliderInput("post","1. Choose no. of posts you want to run the model",value = 1, min = 1, max = 30000),
  br(),
  selectInput("plotvar","2. Select the variable you want to plot",choices=c("raw_dat"=1,"content"=2,"barplot"=3,"genderplot"=4,"girlplot"=5,"rawplot"=6,"adjplot"=7,
           "drinkplot"=8,"damageplot"=9,"songplot"=10,"sentimentplot"=11)),
  br(),
  actionButton(inputId="act",label = "RUN!")

  ),

  mainPanel(
    textOutput("out"),
    #tableOutput("tab"),
    plotOutput("hist1")
  )
)
))

это файл сервера, где существует проблема:

#server.R
shinyServer(function(input, output) {
    #observeEvent(input$action,wbpage(as.numeric(input$post)))
    #output$data<-renderPrint({str(get(content))})
  observeEvent(input$act,{wbpg(np)})  

  output$out<-renderText(paste("No. of posts mined: ",input$post))

#defaul<-reactiveValues(data=wbpage(3000))
np<-wbpage(as.numeric(input$post))



output$hist1 <- renderPlot({barplot})

}) 
#output$hist1 <- 
    #renderPlot({
      #plots$barplot
    #output$tab<-
  #   renderTable({ 
  #  head(data())
    #})
  #output$hist2 <- renderPlot({
  #hist(rnorm(input$num))
  #raunchyplot
  #})
#}) 

1 Ответ

1 голос
/ 17 апреля 2020

Не имея доступа к вашей функции (wbpg), позвольте мне попытаться помочь вам с значениями, возвращаемыми вызовом 'Наблюдение за событиями'. Я думаю, что ваша проблема заключается в размещении '})' в строке с «наблюдаемыми событиями». Все, что вы хотите, чтобы происходило после нажатия кнопки «Выполнить», должно быть в пределах «})». Если это не то, что вам нужно, просьба повторить вопрос.

Вместо вашей команды Наблюдения используйте следующий код для просмотра данных, возвращаемых каждый раз, когда вы нажимаете кнопку «Выполнить». Показывает значение ползунка и число из выпадающего меню.

  observeEvent(input$act,{
    print (paste(input$post,input$plotvar,sep=' '))
  })
...