如何在 R 中创建具有多个分组变量的多面 ggplot 直方图?
我有一个包含以下列的数据集:产品、类别、销售额。我想创建一个按产品和类别划分的销售直方图。
这是我的数据示例:
library(dplyr)
library(ggplot2)
data <- data.frame(
product = rep(c("A", "B", "C"), each = 10),
category = rep(c("X", "Y"), 15),
sales = sample(100:200, 30, replace = TRUE)
)
尝试过:
facet_grid(product ~ category)
。
预期: 每个产品类别组合都有单独的直方图。
结果: 分面不正确,直方图重叠。
这就是我认为您正在寻找的:
library(dplyr)
library(ggplot2)
data <- data.frame(
product = rep(c("A", "B", "C"), each = 10),
category = rep(c("X", "Y"), 15),
sales = sample(100:200, 30, replace = TRUE)
)
data
gg <- data |>
ggplot()+aes(x = sales,fill = product)+geom_histogram(position = "dodge")+
facet_grid(c(~product,~category))
gg