R ggplot2-如何并排绘制图形,只留下一个图例

R ggplot2-如何并排绘制图形,只留下一个图例,r,ggplot2,graph,position,R,Ggplot2,Graph,Position,基于下面的示例数据集,我正在尝试制作两个图形并将它们并排放置。我已经尝试使用cowplot包来实现这一点。最后的结果真是一团糟 是否有一种方法可以将它们并排绘制,只显示一个图例,集中在底部(因为两个图形包含相同的元素) df您可以将facet\u网格添加到ggplot调用中 ggplot(df, aes(x = Group, y = Variable)) + geom_bar(aes(fill = Category), stat = 'identity') + ylim(0,500) +

基于下面的示例数据集,我正在尝试制作两个图形并将它们并排放置。我已经尝试使用
cowplot
包来实现这一点。最后的结果真是一团糟

是否有一种方法可以将它们并排绘制,只显示一个图例,集中在底部(因为两个图形包含相同的元素)


df您可以将
facet\u网格
添加到
ggplot
调用中

ggplot(df, aes(x = Group, y = Variable)) +
  geom_bar(aes(fill = Category), stat = 'identity') +
  ylim(0,500) +
  labs(y = 'Variable') +
  # Generate plots as panel based on Year
  facet_grid(. ~ Year) +
  theme(legend.position = 'bottom',
        legend.title = element_blank(),
        axis.title = element_text(size = 10),
        legend.text = element_text(size = 10),
        axis.text = element_text(size = 10))

顺便说一下,
plot2012
plot2016
是相同的。似乎您忘记了将
df
Year
进行子集划分。
ggplot(df, aes(x = Group, y = Variable)) +
  geom_bar(aes(fill = Category), stat = 'identity') +
  ylim(0,500) +
  labs(y = 'Variable') +
  # Generate plots as panel based on Year
  facet_grid(. ~ Year) +
  theme(legend.position = 'bottom',
        legend.title = element_blank(),
        axis.title = element_text(size = 10),
        legend.text = element_text(size = 10),
        axis.text = element_text(size = 10))