r - 基于R中范围的分组直方图
问题描述
我有一个这种格式的数据集,我想制作一个分组直方图和范围,即10-20, 20-30, ..., 90-100
.
group weight
1 A 54
2 A 55
3 B 52
4 B 53
5 C 60
我尝试了以下方法来生成直方图,但不确定如何在 X 轴上制作权重范围。
ggplot(df, aes(x = weight)) +
geom_histogram(aes(color = gp), fill = "white",
position = "identity", bins = 30) +
scale_color_manual(values = c("red", "blue", 'green'))
我实际上需要一个如下所示的直方图
解决方案
那是条形图,而不是直方图。这是一种重现它的方法:
library(dplyr)
df %>%
mutate(weight_class = cut(weight,
breaks = seq(20, 60, by = 10))) %>%
ggplot() +
geom_bar(aes(x = weight_class, fill = group), position = "dodge") +
scale_fill_manual(values = c("red", "blue", "green"))
推荐阅读
- python - 在方形影线之间执行减法运算
- node.js - Prettier installed globally but command not found
- vue.js - 如何通过参数传递整个对象
- python - 从数据框中分配变量
- firebase - How to solve "Unhandled Exception: PlatformException(Error performing updateData, NOT_FOUND: No document to update:"
- rust - 如何在 reqwest 中的 Decode failed 错误中获取响应正文?
- python - Matplotlib 流图不同颜色
- angular - 值不会在视图中更新
- cypress - 赛普拉斯:等待不可预知的组件从专有集合中渲染?
- android - 如何在多行 TextView 的末尾添加可点击的 ImageView?