您现在的位置是:首页 > 编程 > 

R语言图形拼接神器:Patchwork包入门指南

2025-07-26 20:28:36
R语言图形拼接神器:Patchwork包入门指南 Patchwork 是一个非常流行的用于拼接 ggplot2 图形的包。它提供了一种类似四则运算的方法来拼接图形,非常易于使用,是拼接 ggplot2 图形的首选工具。拼图符号+:左右拼图。|:左右拼图(更直观的写法)。/:上下拼图。示例图形首先,我们使用 ggplot2 包中的 mtcars 数据集来创建四个示例图形:代码语言:javascrip

R语言图形拼接神器:Patchwork包入门指南

Patchwork 是一个非常流行的用于拼接 ggplot2 图形的包。它提供了一种类似四则运算的方法来拼接图形,非常易于使用,是拼接 ggplot2 图形的首选工具。

拼图符号
  • +:左右拼图。
  • |:左右拼图(更直观的写法)。
  • /:上下拼图。
示例图形

首先,我们使用 ggplot2 包中的 mtcars 数据集来创建四个示例图形:

代码语言:javascript代码运行次数:0运行复制
library(ggplot2)
library(patchwork)

p1 <- ggplot(mpg) +
  geom_point(aes(x = displ, y = hwy)) +
  ggtitle("Plot 1")

p2 <- ggplot(mpg) +
  geom_bar(aes(x = (year), fill = drv), position = "dodge") +
  labs(x = "year") +
  ggtitle("Plot 2")

p <- ggplot(mpg) +
  geom_density(aes(x = hwy, fill = drv), colour = A) +
  facet_grid(rows = vars(drv)) +
  ggtitle("Plot ")

p4 <- ggplot(mpg) +
  stat_summary(aes(x = drv, y = hwy, fill = drv), geom = "col", fun.data = mean_se) +
  stat_summary(aes(x = drv, y = hwy), geom = "errorbar", fun.data = mean_se, width = 0.5) +
  ggtitle("Plot 4")

接下来,通过实例演示如何用 Patchwork 将这些图形拼接在一起。

左右拼图
  • 使用+拼图:
代码语言:javascript代码运行次数:0运行复制
p1 + p2
  • 使用|拼图
代码语言:javascript代码运行次数:0运行复制
p1 | p2
上下拼图
  • 使用/拼图
代码语言:javascript代码运行次数:0运行复制
p1 / p2
嵌套拼图代码语言:javascript代码运行次数:0运行复制
(p1 | p2) / p
控制布局

Patchwork 包提供了几个函数来控制组合图形的布局。

  • 默认布局
代码语言:javascript代码运行次数:0运行复制
p1 + p2 + p + p4
  • plot_layout 控制布局
代码语言:javascript代码运行次数:0运行复制
p1 + p2 + p + p4 + plot_layout(nrow = , byrow = FALSE)
  • wrap_plots 控制布局
代码语言:javascript代码运行次数:0运行复制
wrap_plots(list(p1, p2, p, p4), ncol = 2)
  • plot_spacer 添加空格
代码语言:javascript代码运行次数:0运行复制
p1 + p2 + plot_spacer() + p4
  • inset_element 生成插图
代码语言:javascript代码运行次数:0运行复制
p1 + inset_element(p2, left = 0.5, bottom = 0.5, right = 0.95, top = 0.95)
主题设置
  • theme
代码语言:javascript代码运行次数:0运行复制
p1 + p2 & theme_bw()
  • labes
代码语言:javascript代码运行次数:0运行复制
p1 + p2 + labs(subtitle = 'This will appear in the last plot')
  • plot_annotation
代码语言:javascript代码运行次数:0运行复制
(p1 | (p2 / p)) +
  plot_annotation(title = 'Title: show plot_annotation of patchwork')

可以看到,Patchwork 提供了多个拼图符号、布局控制和注释选项。这使得 Patchwork 拼接 ggplot2 图形非常方便和强大。

本文参与 腾讯云自媒体同步曝光计划,分享自。原始发表:2024-12-21,如有侵权请联系 cloudcommunity@tencent 删除函数入门数据布局工具

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1230277.html

相关标签:无
上传时间: 2025-07-26 07:29:55
留言与评论(共有 7 条评论)
本站网友 1立方米水等于多少吨
26分钟前 发表
非常易于使用
本站网友 合肥教育
20分钟前 发表
position = "dodge") + labs(x = "year") + ggtitle("Plot 2") p <- ggplot(mpg) + geom_density(aes(x = hwy
本站网友 虫穴
17分钟前 发表
y = hwy)) + ggtitle("Plot 1") p2 <- ggplot(mpg) + geom_bar(aes(x = (year)
本站网友 英特尔公司
30分钟前 发表
y = hwy)
本站网友 彭实戈
14分钟前 发表
fun.data = mean_se) + stat_summary(aes(x = drv
本站网友 sesefa
14分钟前 发表
p4)