Преобразование графика ggplot / манипулировать в график сюжета или js-сценария - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь преобразовать свой ggplot в сюжетный график, используя ggplotly (). Тем не менее, похоже, что он не работает с этим кодом, после того, как манипулирует на графике. Есть ли другой способ сделать это?

library(ggplot2)
library(manipulate)
grades <- data.frame(Final = 20 * runif(70))
myFinalsPlot <- function(sliderInput, initialIndex, finalIndex) {
  ggplot(data.frame(grades$Final[initialIndex:finalIndex]),
     aes(x = grades$Final[initialIndex:finalIndex])) +
geom_histogram(aes(y = ..density..),
               binwidth = sliderInput, colour = "green", fill = "yellow") +
geom_density(alpha = 0.2, fill = "#FF6666") +
labs(x = "Marks", y = "Grades")
}

myFinalsPlot <- manipulate(myFinalsPlot(slidersInput, 1, 70),
                       slidersInput = slider(1, 12, step = 1, initial = 5))

1 Ответ

0 голосов
/ 07 мая 2018

Во-первых, чтобы ваш код работал с графиком ggplot2, в вашем коде есть проблема, которую нужно исправить. Вы не должны давать одно и то же имя своей функции и объекту заговора. Заменить это:

myFinalsPlot <- manipulate(myFinalsPlot(slidersInput, 1, 70),
                   slidersInput = slider(1, 12, step = 1, initial = 5))

By, например ::

myPlot <- manipulate(myFinalsPlot(slidersInput, 1, 70),
                   slidersInput = slider(1, 12, step = 1, initial = 5))  

Теперь, что касается plotly графиков, я не думаю, что это должно работать с манипулированием. Я цитирую сайт RStudio https://support.rstudio.com/hc/en-us/articles/200551906-Interactive-Plotting-with-Manipulate:

RStudio работает с пакетом манипуляции для добавления интерактивных возможностей к стандартным R графикам.

...