R语言绘图|patchwork拼图
一、安装patchwork包
install.packages("patchwork")
【资料图】
library(patchwork)
二、简单运算符拼图
p1<-ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut,fill=clarity))p2<-ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut, fill = clarity), position = "dodge")p3<-ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut))p4<-ggplot(data = iris,mapping = aes(x = Species, y = Sepal.Width, fill = Species)) +geom_boxplot()+ geom_jitter()p5<-ggplot(data = mpg, mapping = aes(x = class, y = hwy)) + geom_boxplot() + coord_flip()
(先任意绘制五张图分别命名为p1,p2,p3,p4,p5)
1)按➕排列图片
p1+p2+p3+p4
2)“|”对画布进行分割
p1|p2+p3 #p1占50%,p2和p3一共占50%
3) "/" 按行拼图
p1/p2/p3
(p1+p2)/p3 #可以把多个图合并成一行
4)plot_layout()调整行数和列数
p1+p2-p3+plot_layout(ncol = 1) #p1和p2都在第一行,p3在第二行,一共一列,p1和p2看成一列
p1+p3-p2+plot_layout(ncol = 2) #效果和(p1+p3)|p2一样
5)plot_layout() 调节行列的宽度和高度
p1+p2+p3+p4+p5+plot_layout(ncol = 2,heights = c(1,2,3)) #ncol设置两列,而且height是每行高度分别是1/2/3
p1+p2+(p3+p4+plot_layout(ncol = 2))+p5+plot_layout(widths = c(2,1))#p3和p4组合,并设置以两列方式组合,总体布局的宽度分别是2,1
6) theme函数修改主题
a) *theme_参数()设置局部主题
(p1*theme_bw())+(p2+p3)+p4+plot_layout(ncol = 1)#对p1使用theme_bw() 主题,p3和p2合并成一张图,并且拼成一列
b)()& theme_参数 设置所有图片的主题
(p1+(p2+p3)+p4+plot_layout(ncol = 1))&theme_bw()
总结:
theme_ 的参数有很多,可以设置不同主题,根据需要选择
三、进阶拼图
(1)坐标法
areas<-c(area(1,1,2,1),area(2,3,3,3))plot(areas)
说明:有两个area函数说明绘制了两个区域,第一区域的开始位置坐标是(1,1),结束位置是(2,1)
第二个区域开始坐标是(2,3),结束位置是(3,3)
再看一个例子
layout<-c(area(1,1,1,1),area(1,3,3,3),area(3,1,3,2))plot(layout)
说明:有三个area函数说明绘制了三个区域,第一区域的开始位置坐标是(1,1),结束位置是(1,1)
第二个区域开始坐标是(1,3),结束位置是(3,3)
第三个区域开始坐标是(3,1),结束位置是(3,2)
(2)字母法(字母代表绘图区,#代表空白)
areas<-"A#B ##B CCB"p1+p2+p3+plot_layout(design = areas)
四、调整图例
p1+p2+p4+guide_area()+plot_layout(guides = "auto")#一共是四个区域p1,p2,p3和图例区
p1+p2+p4+guide_area()+plot_layout(guides = "collect")
⚠️⚠️ guides的参数 "auto" , "collect" , "keep"
五、插入元素
p1+inset_element(p2,0.6,0.6,1,1)#图中的坐标同样表示插入图片的位置,(0.6,0.6)是图片的左下角点,(1,1)是图片右上角的点
p1+inset_element(p2,0,0.6,0.4,1)
六、插入空白 plot_spacer()
p1+plot_spacer()+p2#在p1和p2之间插入一个空白
七、插入图片标签
(p1|p2)/(p3|p4)+plot_annotation(tag_levels = "A")&theme(plot.tag=element_text(color="blue",size=16))
tag_levels的参数:“A”大写字母 ;“a”小写字母 ;“i”小写罗马字母 ;“I”大写字母罗马字母 ;“1”数字排序
theme设置标签参数,包括颜色和大小
‼️自定义标签名称
(p1|p2)/(p3|p4)+plot_layout(tag_level = "new")+plot_annotation(tag_levels = list(c("A1","A2","A3","A4")))&theme(plot.tag = element_text(color = "grey",size = 16))
plot_layout(tag_level ="new") 设定自定义标签
tag_levels =list(c("A1","A2","A3","A4"))设置标签名称
⚠️文章参考于b站视频——R语言搬运工
关键词:
责任编辑:宋璟
-
R语言绘图|patchwork拼图
-
擎天柱牛王最后怎么死
-
避孕套哪种最好_女用避孕套怎么用|当前速递
-
古代的冰窖是怎样做成的 天天热点评
-
环球播报:婚内孩子一直是女方带,离婚时男方有权争抚养权吗?
-
中旗新材(001212.SZ)发行可转债申请获得中国证监会批准-天天快资讯
-
去年我省国企营收首破2000亿
-
想念食品IPO:撑起半边天的挂面还“香”吗|天天观察
-
手绘动漫人物铅笔画女古风_手绘动漫人物铅笔画
-
“四小时睡眠法”科学吗?睡眠医学科医生回应
-
就在明早!昆明交警郑重提醒!
-
给老人送什么花合适
-
女儿生日妈妈送什么礼物好|今日聚焦
-
当前播报:80个小时的奇迹!中方救援队成功营救幸存者:被困处温度有利于延续生命
-
丰田轿车型有哪些_丰田汽车有哪些车型|世界速看
-
吃亏了?2023年个人医保账户入账金额减少了?未来会不会取消?
-
快看点丨完美腹肌!C罗晒照,父子俩一同蒸桑拿
-
焦点快播:yy软件主播哪里看礼物收益
-
上交礼品的规定 新视野
-
《熊出没·伴我“熊芯”》票房突破13亿|环球热点
-
环球热文:公众号活动送什么礼品好
-
七八月份坐月子的孕妇注意什么礼物-天天关注
-
拼多多上海消费券在哪领?有哪些优惠券?
-
同安举办工业园区春季招聘活动
-
ATI Radeon HD 3200_ati radeon hd3200
-
当前热议!北京大兴“两区”建设“开门红” 14家企业签约投资总额超百亿元
-
全球速看:继续加强抵京旅客出行保障,北京地铁4号线今日延长运营时间
-
学院暑期社会实践团科技赋农助力乡村振兴稿件怎样投稿报道宣传?
-
23渤海银行CD056今日发布发行公告 当前视讯
-
贤丰控股:贤丰新材料科技(枝江)有限公司正常生产经营中,产能和销售在起步阶段
-
【全球报资讯】男人耳朵上有痣代表什么 耳朵上有痣代表什么
-
通讯!甫组词甫的组词甫怎么组词
-
在“五个一百”中品读时代新图景
-
天天微速讯:巴媒:皇马将为泽尼特中卫罗伯特-雷南送上4000万欧报价
-
【世界快播报】南京火车站到中山陵的交通方式