作图R plot数据分析R代码

R语言绘图-ggplot2_拼图共享合并图例

2021-11-19  本文已影响0人  R语言搬运工

\color{blue}{此文内容首发于微信公众号:R语言搬运工,关注公众号浏览更多精彩内容}

\color{red}{交流分享扣扣群:925920448}

--原文链接--

在实际绘图时,如果涉及到多个图形的整合排版会涉及一个问题,图例如何进行整合。比如在4张图的排版,4张图使用的映射都是同一个变量,那么4张图的图例都是一样的,整合排版完4张图都带着各自的图例,但是我们想只显示一个图例,怎么实现呢?

image.png

如上图,四张图中每张图都带着图例,想把他们图例整合为一个显示在最上面,安排!

先把4张图画出来:

dsamp <- diamonds[sample(nrow(diamonds), 1000), ]
p1 <- qplot(carat, price, data = dsamp, colour = clarity)+
  guides(colour=guide_legend(nrow=1,byrow=T))+
  theme(legend.position = "top")
p2 <- qplot(cut, price, data = dsamp, colour = clarity)+
  guides(colour=guide_legend(nrow=1,byrow=T))+
  theme(legend.position = "top")
p3 <- qplot(color, price, data = dsamp, colour = clarity)+
  guides(colour=guide_legend(nrow=1,byrow=T))+
  theme(legend.position = "top")
p4 <- qplot(depth, price, data = dsamp, colour = clarity)+
  guides(colour=guide_legend(nrow=1,byrow=T))+
  theme(legend.position = "top")

通常我们在整合图的时候用的比较多的是包gridExtra,此包比较暴力的把图给整合在了一起,要想实现我们的目的还是要温柔一点。

包lemon为我们提供了这样的方法

library(lemon)
grid_arrange_shared_legend(p1, p2, p3, p4, ncol = 2, nrow = 2,position='top')
image.png

现在4张图的图例整合在了最上面,是不是很方便,赶紧动手试一下。

\color{blue}{此文内容首发于微信公众号:R语言搬运工,关注公众号浏览更多精彩内容}

\color{red}{交流分享扣扣群:925920448}

精彩推荐:

R语言绘制散点图geom_point
R语言添加拟合曲线geom_smooth
R语言箱线图boxplot
R语言线图geom_line

\color{#D2691E}{喜欢}\color{#6495ED}{我们}\color{#DC143C}{的}\color{#7FFF00}{文章}\color{#FF1493}{就}\color{ #1E90FF}{点个}\color{#FFD700}{赞赏}\color{#FF69B4}{吧}\color{#8A2BE2}{!}

image.png
上一篇下一篇

猜你喜欢

热点阅读