在一个闪亮的项目中使用plotly的问题

时间:2016-03-06 13:28:21

标签: r shiny plotly

我试图开始使用带有光泽的情节,但不幸的是它不适用于我的代码。作为一个例子,我写了这个(对不起,UI部分的描述是俄语):

UI:

library(shiny)
library(ggplot2)
library(plotly)
library(mvtnorm)

shinyUI(fluidPage(
  titlePanel("Грачев Влад инкорпорейшн"),
  sidebarLayout(
    sidebarPanel(
      sliderInput('n_obs', 'Количество испытаний', min = 0, max = 1000, value = 500, animate = TRUE),
      sliderInput('prc', 'Средний рост детей', min = 170, max = 180, value = 175, step = 0.5, animate = TRUE),
      sliderInput('prp', 'Средний рост родителей', min = 170, max = 180, value = 175, step = 0.5, animate = TRUE),
      sliderInput('corr', 'Корреляция между ростом ребенка и ростом родителей', min = -1, max = 1, value = 0.5, step = 0.1, animate = TRUE),
      sliderInput('stdc', 'Стандартное отклонение роста детей', min = 0, max = 1, value = 0.5, animate = TRUE),
      sliderInput('stdp', 'Стандартное отклонение роста родителей', min = 0, max = 1, value = 0.5, animate = TRUE)

    ),
    mainPanel(
      plotOutput('dotplot'), 
      plotOutput('plotl')
    )
  )
))

服务器:

shinyServer(function(input, output){
  update_x <- reactive({
    mu <- c(input$prc,input$prp)
    A <-matrix(
      c(input$stdc, input$corr*sqrt(input$stdc*input$stdp), input$corr*sqrt(input$stdc*input$stdp), input$stdp),
      nrow = 2
    )
    X <- rmvnorm(input$n_obs, mean = mu, sigma = A)
    X
  })

  output$dotplot <- renderPlot({
    X <- data.frame(update_x())
    g <- ggplot(X, aes(x=X[,1], y = X[,2]))  + geom_jitter() + stat_smooth()
    gg <- ggplotly(g)
    gg
  })
  output$plotl <- renderPlotly({
    X <- data.frame(update_x())
    g <-ggplot(X, aes(X[,2])) + geom_histogram(binwidth = 0.2) 
    gg <- ggplotly(g)
    gg
  })
})

它没有图形化(只是普通的renderPlot和ggplot图): enter image description here

但是当我启动上面的代码时,它没有显示任何图形或警告(只有空格),并且控制台中有2个警告:不建议使用大小来表示离散变量。

提前致谢 维拉德

0 个答案:

没有答案