我需要根据子组所属的组对箱形图(子组)进行分组并对它们(组)进行重新排序。
我使用的R脚本是:
data<-read.delim("clipboard")
p <- ggplot(data, aes(Class2,cM))
p <- p + geom_boxplot(aes(fill = factor(Class1))) +
geom_jitter(alpha = 0.4, position = position_jitter(height = .01, width = .35)) +
coord_flip()
我生成了这个(Class1 = group; Class2 = subgroup)。
请从here下载数据表。
如您所见,图表中没有组织组。如果你能帮助我,我将不胜感激。由于某些子组没有多个值,因此我们无法看到颜色来指示它们属于哪个组。如果您可以添加标签以显示哪个子组在哪个组中,那就太棒了。
谢谢!
答案 0 :(得分:0)
请提供文本格式的数据,而不是xls。
解决方案1:将Class2转换为因子并按所需顺序设置级别
data$Class2 <- factor(
data$Class2,
levels = c("group1:b", "group1:c", "group2:a")
)
解决方案2:使用facet_wrap代替填充
ggplot(data, aes(x= Class2, y = cM)) + geom_boxplot() +
geom_jitter(alpha = 0.4, position = position_jitter(height = .01, width = .35)) +
coord_flip() +
facet_wrap(~Class1)
ggplot(data, aes(x= Class2, y = cM)) + geom_boxplot() +
geom_jitter(alpha = 0.4, position = position_jitter(height = .01, width = .35)) +
coord_flip() +
facet_wrap(~Class1, scales = "free_x")