我试图使用ggplotly()将我的ggplot转换为情节图。但是,在对绘图进行操作后,它似乎无法处理此代码。还有其他办法吗?
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))
答案 0 :(得分:0)
首先,要使代码与ggplot2
图一起使用,您的代码中存在需要修复的问题。您不应该为您的函数和绘图对象指定相同的名称。替换这个:
myFinalsPlot <- manipulate(myFinalsPlot(slidersInput, 1, 70),
slidersInput = slider(1, 12, step = 1, initial = 5))
通过,例如:
myPlot <- manipulate(myFinalsPlot(slidersInput, 1, 70),
slidersInput = slider(1, 12, step = 1, initial = 5))
现在,关于plotly
图,我不认为它应该与操作一起使用。我引用了RStudio的网站{{3}}:
RStudio与操作包一起使用,为标准 R图添加交互功能。