【问题标题】:How do I generate multiple boxplots for multiple independent variables across a data set?如何为数据集中的多个自变量生成多个箱线图?
【发布时间】:2019-10-28 18:46:19
【问题描述】:

我有一个设备,可以为许多参数(例如高度、生物量、NDVI、密度等)生成一个 Excel 电子表格。这些独立变量包含在标题名称中,并且都具有指定的数值。我想生成多个箱线图(每个变量一个),使用“治疗”列生成多个 x 值。

例如:创建一个y轴高度,x轴处理,y轴生物量+x轴处理等的箱线图。

我知道如何使用ggplot2 正常执行此操作并手动输入此信息,但我希望获得有关如何生成它的建议,以便y = column namex= treatment

任何帮助都将不胜感激:) 提前致谢!

【问题讨论】:

标签: r dataframe statistics boxplot yaxis


【解决方案1】:

如果您想将它们全部放在一个图中,但每列都有一个单独的面板,则将这些列融合(参见?tidyr::gather)并使用ggplot2::facet_wrap()。换句话说,重新调整数据的长度,让一列用于“变量”,一列用于“值”,然后设置aes(y = values) 并使用facet_wrap(~ variable)

以下是iris 数据集的示例,使用Species 列作为处理,其余作为参数。

library(tidyr)
library(ggplot2)

data(iris)

iris %>%
  gather(var, val, -Species) %>%
  ggplot(aes(x = Species, y = val)) +
  facet_wrap(~ var, scales = "free_y") +
  geom_boxplot() +
  labs(
    x = "Treatment",
    y = "Parameter") +
  theme_bw()

【讨论】:

    猜你喜欢
    • 2017-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-02
    • 2015-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多