ggplot2不同的分面宽度用于分类x轴

3

我正在绘制不同类别数据的各个方面:

df <- as.data.frame(as.factor(c("A","B","C","D","E","F")))
names(df) <- "Xvar"
df$Yvar <- c(2,1,4,5,3,7)
df$facet <- c(rep("facet 1",2),rep("facet 2",4))

ggplot(df, aes(x=Xvar, y=Yvar, group=1)) +
  geom_line() +
  facet_wrap(~facet, scales="free_x")

enter image description here

如何使只包含两个类别的第一个分面的大小是包含四个类别的第二个分面的一半?即每个分面的宽度与分类x轴数据点的数量成比例。我尝试了scales="free_x",但无效。
1个回答

5
如果你愿意使用facet_grid而不是facet_wrap,你可以使用space参数来实现此操作。
ggplot(df, aes(x=Xvar, y=Yvar, group=1)) +
  geom_line() +
  facet_grid(~facet, scales="free_x", space = "free_x")

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接