如何在 R 中为多个组创建多个图
How to create multiple graph for multiple group in R
我有一个具有这种结构的大型日期框架:
view(data.frame)
Group Height
Green 10
Green 45
Green 23
Red 11
Red 8
Red 230
有关信息,我有 300 个不同的组。我想要的是按组绘制一张图(箱线图)。理想情况下,我希望它们位于同一个图表中,x 轴为“组”,y 轴为“高度”。但是,有 300 个组,我不知道是否可以将它们放在同一个大图中。
谢谢!
是可以的,但是能不能读懂或者有用就是另外一回事了
这是一种方法,使用 ggplot
和一些可能与您的数据集相关或不相关的合成数据。
为了管理视觉超载,300 个组被任意分成三个子组并进行分面。
更好地了解您的数据和您想要可视化的内容将有助于找到可能的解决方案。
library(ggplot2)
ggplot(df)+
geom_boxplot(aes(y = height, x =factor(group), group = group))+
facet_wrap(~g1, scales = "free_x", nrow = 3)+
theme(axis.text.x = element_text(angle = 90, size = 6))
数据
df <- data.frame(group = rep(1:300, each = 10),
height = runif(3000, 5, 250),
g1 = rep(c("Groups 1-100", "Groups 101-200", "Groups 201-300" ), each = 1000))
由 reprex package (v2.0.0)
于 2021-07-06 创建
我有一个具有这种结构的大型日期框架:
view(data.frame)
Group Height
Green 10
Green 45
Green 23
Red 11
Red 8
Red 230
有关信息,我有 300 个不同的组。我想要的是按组绘制一张图(箱线图)。理想情况下,我希望它们位于同一个图表中,x 轴为“组”,y 轴为“高度”。但是,有 300 个组,我不知道是否可以将它们放在同一个大图中。
谢谢!
是可以的,但是能不能读懂或者有用就是另外一回事了
这是一种方法,使用 ggplot
和一些可能与您的数据集相关或不相关的合成数据。
为了管理视觉超载,300 个组被任意分成三个子组并进行分面。
更好地了解您的数据和您想要可视化的内容将有助于找到可能的解决方案。
library(ggplot2)
ggplot(df)+
geom_boxplot(aes(y = height, x =factor(group), group = group))+
facet_wrap(~g1, scales = "free_x", nrow = 3)+
theme(axis.text.x = element_text(angle = 90, size = 6))
数据
df <- data.frame(group = rep(1:300, each = 10),
height = runif(3000, 5, 250),
g1 = rep(c("Groups 1-100", "Groups 101-200", "Groups 201-300" ), each = 1000))
由 reprex package (v2.0.0)
于 2021-07-06 创建