我使用以下命令从虹膜数据集创建了一个数据框架:
new_iris = data.frame(iris$Species,iris$Sepal.Length)
range(iris$Sepal.Length)第二个命令告诉我Sepal.Length的范围。我希望使用圆滑的或ggplot2来实现一个条形图,以便代码自动确定Sepal.Length的范围,然后每个范围包含一个条形图,它给出了该范围内所有Sepal.Length值的计数。因此,假设确定的范围是"2-4“、"4-6”、"6-8",我应该得到3条sepal.length值,这些值介于"2-4“、"4-6”和"6-8“之间。附加快照,在下面的绘图,我希望编辑x轴标签与代码将决定的范围和y轴标签"total_bill“与"cases”。谢谢,请帮忙。

发布于 2017-11-06 08:04:40
iris$sepal_gp <- cut(iris$Sepal.Length, breaks=3, include.lowest=TRUE)
ggplot(iris, aes(sepal_gp, fill=Species)) + geom_bar()

编辑:
ggplot(iris, aes(sepal_gp, fill=sepal_gp)) + geom_bar()

若要移除图例并放入自定义悬停文本,请以切换方式:
(i)计算每一组别的数目
library(dplyr)
iris <- iris %>%
group_by(sepal_gp) %>%
mutate(sepal_gp_count = n())(2)在ggplot中插入自定义悬停文本:
p <- ggplot(iris, aes(sepal_gp, fill=sepal_gp, text=paste("Case: <br>", sepal_gp, "<br> Count: <br>", sepal_gp_count))) +
geom_bar() (3)阴谋情节:
ggplotly(p, tooltip="text") %>%
layout(showlegend=FALSE)https://stackoverflow.com/questions/47132076
复制相似问题