如何在 ggplot2 中使用 geom_boxplot 创建多个箱线图同时使它们成比例?
How do I create multiple boxplots whilst also making them proportional using geom_boxplot within ggplot2?
我知道 ggplot2 的 geom_boxplot 中的 varwidth = TRUE 可用于创建比例箱线图,以便每个箱线图还总结了图中的点数。但是,我很难在生成多个图的同时保持成比例的箱线图大小?
我正在尝试使用 ggplot2 中的菱形 df 重现下图。
我试过的是这样的:
ggplot(data = diamonds, mapping = aes(x = carat, y = price)) + geom_boxplot(mapping = aes(group = cut_number(carat, 20), varwidth = TRUE))
我尝试使用cut_number来实现倍数,并使用var-width来实现比例。我还想让箱线图垂直显示。几个小时以来,我一直为此感到困惑,并在网上查看但无济于事。有什么建议吗?
从 ggplot2 v3.3.0 开始,图层的方向是自动检测的。在某些情况下,此检测可能不正确。您可以通过将方向作为参数添加到图层来强制方向:
library(ggplot2)
ggplot(data = diamonds, mapping = aes(x = carat, y = price)) +
geom_boxplot(mapping = aes(group = cut_number(carat, 20)),
orientation = "x")
由 reprex package (v0.3.0)
于 2020-05-01 创建
我知道 ggplot2 的 geom_boxplot 中的 varwidth = TRUE 可用于创建比例箱线图,以便每个箱线图还总结了图中的点数。但是,我很难在生成多个图的同时保持成比例的箱线图大小?
我正在尝试使用 ggplot2 中的菱形 df 重现下图。
我试过的是这样的:
ggplot(data = diamonds, mapping = aes(x = carat, y = price)) + geom_boxplot(mapping = aes(group = cut_number(carat, 20), varwidth = TRUE))
我尝试使用cut_number来实现倍数,并使用var-width来实现比例。我还想让箱线图垂直显示。几个小时以来,我一直为此感到困惑,并在网上查看但无济于事。有什么建议吗?
从 ggplot2 v3.3.0 开始,图层的方向是自动检测的。在某些情况下,此检测可能不正确。您可以通过将方向作为参数添加到图层来强制方向:
library(ggplot2)
ggplot(data = diamonds, mapping = aes(x = carat, y = price)) +
geom_boxplot(mapping = aes(group = cut_number(carat, 20)),
orientation = "x")
由 reprex package (v0.3.0)
于 2020-05-01 创建