避免在ggplot facet grid

时间:2016-12-19 14:55:50

标签: r ggplot2

我正在尝试绘制生长图的方格网格,并且每个绘图末尾的标签都相互重叠。以下是使用mpg数据的示例代码:

print(ggplot(data = aggregate(hwy~class+year, data=mpg, mean), aes(x = year, y=hwy))+
    geom_line(aes(group = 1))+
    geom_point()+
    facet_wrap(~class,  nrow = 2)+
    xlab("Year")+
    scale_x_discrete(limits=unique(mpg$year)))

如何通过从绘图边缘移动刻度线和标签来防止这种重叠。我尝试在主题中使用保证金,但我也没有成功。谢谢你的帮助。

1 个答案:

答案 0 :(得分:8)

我假设您要使用panel.spacing.x中的theme调整小平面面板之间的水平间距(已通过ggplot2_3.0.0测试)。

ggplot(data = aggregate(hwy~class+year, data=mpg, mean), aes(x = year, y=hwy))+
  geom_line(aes(group = 1))+
  geom_point()+
  facet_wrap(~class,  nrow = 2)+
  xlab("Year")+
  scale_x_discrete(limits=unique(mpg$year)) +
  theme(panel.spacing.x = unit(4, "mm"))

之前

enter image description here

之后-using panel.spacing.x()

enter image description here