问题标签 [patchwork]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
110 浏览

r - 使用拼凑对齐和缩放 ggplots

我正在尝试使用 patchwork 包将一些图组合成一个图,但我不熟悉它,并且无法弄清楚如何正确缩放图的大小。有一个核心图,散点图,然后是每个连续变量的箱线图,以及一些分布。下面是一个可重现的示例:

在此处输入图像描述

这与我尝试的很接近,但是需要重新调整箱线图,以便顶部的大约是其显示高度的 20%,而右侧的大约是其显示宽度的 20%。我试过用patchwork::plot_layout它来处理缩放,但我一直得到意想不到的结果。我插入了,patchwork::plot_spacer()以便右侧的箱线图不会拉伸图片的整个高度,但也许有更好的方法来做到这一点。箱线图应该看起来更像轴,所以右上角的空白不应该真的存在。

0 投票
1 回答
211 浏览

r - 将多个 gt 表合并为一个图

使用下面的代码(根据此处的代码进行编辑),我生成了两个带有gt包的示例表:

出去:

我希望将它们组合成一个 ggplot 对象:p <- (p1 | p2)使用patchwork包,但我还没有找到有效的答案。

我还尝试使用as_ggplot()函数将其转换为 ggplot:

但它引发了一个错误:

有可能这样做吗?提前感谢您的帮助。

参考:

R - 在单个页面输出中组合两个 gt 对象

0 投票
1 回答
44 浏览

r - 使用 R 自适应地为 ggplot 文本(标题、副标题、标题等)开始一个换行符

使用代码,我绘制了一个组合图:

出去:

在此处输入图像描述

现在的问题是顶部的解释文本无法自适应地开始换行以显示所有内容?假设文本是一个长段落,它将超出情节界限。

我该如何解决这个问题?感谢您的评论和提前帮助。

0 投票
0 回答
34 浏览

ggplot2 - 使用拼凑将 y 轴标题向右对齐

我想通过使用拼凑和以下演示代码将 y 轴标题向右对齐。但是,这个 hjust 选项没有效果,p1 y 轴标题仍然在中间。我怎样才能使这种对齐?

0 投票
1 回答
37 浏览

r - 拼凑:生成共同的图例

我已经生成了 3 个图并想将它们组合起来。绘图的代码如下:

#------------------------------------------------ -------------------------------------------------- ---------------------#

#------------------------------------------------ -------------------------------------------------- ---------------------#

#------------------------------------------------ -------------------------------------------------- ---------------------#

#------------------------------------------------ -------------------------------------------------- ---------------------#

使用patchwork

我可以用两个图例生成这个数字:

在此处输入图像描述

但是,我希望这个人物只有一个传说。如何才能做到这一点?

0 投票
1 回答
19 浏览

r - 在 R 中,在 1 列网格旁边的自定义标签

给定数量(4)个相同尺寸的 ggplot 对象,当将它们组合成一个图作为 1 列图时,我希望在每个图的左侧都有自定义文本。在cowplot、ggarrange、patchwork 等软件包的帮助下,组合这些图很容易——在每个图旁边添加一个标签字母,例如“A”“B”也很容易。但是在每个图的左侧添加更长的文本很困难。

首先我尝试使用 Patchwork,tag_suffix 如下,但它只显示所有四个图的第一个标签:

(下面的替代通用图)

然后我在 Cowplot 中尝试,并通过在左侧插入一个带有 NULL 空白图的额外列,它在左侧为我的标签腾出了空间,但是定位很困难,并且字符串内的换行符 \n 失败。

实际的图是单个水平堆叠的条,每个用于显示比例的不同变量(每个变量有一组不同的类别,这就是为什么我首先单独绘制它们,而不是仅仅制作一组堆叠条)。

请对另一种方法提出任何建议-我也尝试过 ggarrange 但尚未尝试 gridExtra 的 grid.arrange

截图是(1)快速伪造版本,以显示组合情节的目标,标签将在左侧的空白处;(2)到目前为止我得到的拼凑而成的东西;(3) Cowplot 结果的最左边缘,它几乎就在那里,但非常繁琐——而我想象会有一个共同的愿望,即在一组图的每一个旁边放置一个文本描述?

图的目标模型 拼凑标签仅重复​​第一个标签 只有 Cowplot 的左边缘,标签在那里,但需要打破 2 或 3 行

0 投票
1 回答
35 浏览

r - 使用 Patchwork 时出现不一致的错误(二进制运算符的非数字参数)

我正在构建一个 Rshiny 应用程序,它接受用户输入并生成带有图表的 Rmd 幻灯片。我基于在https://mattherman.info/blog/ppt-patchwork/找到的示例。当我尝试运行 Matt Herman 博客中的示例时,它会按预期生成 ppt。昨天,当我运行我的代码时,我不断收到错误消息“+ 中的错误:二进制运算符的非数字参数”。我慢慢地将我的图表/图表/代码替换为示例代码,并且能够生成一个没有错误的 ppt 幻灯片。我以为我很清楚。

今天早上,我尝试在打开和关闭 R 后再次运行该程序,现在我得到了与昨天相同的错误,尽管 Matt Herman 示例代码仍然可以完美运行。我认为这与拼凑包加载不正确有关,但我是 R 的新手,我不能 100% 确定。如果有人可以提供帮助,将不胜感激!这种不一致使我发疯。

(PS 我知道代码现在有点草率 - 我在过去的尝试中添加了一些库,我可能不再需要这些库,我正在写这篇文章并试图找出这个拼凑问题,所以为混乱道歉。)

闪亮应用程序的代码:

Markdown 文件的代码

0 投票
1 回答
46 浏览

r - theme_void 上的 R geom_tile 在绘图上方和下方有空白区域

当使用 geom_tile() 使用 theme_void() 制作 ggplot 对象时,绘图的顶部和底部有空白区域,并且当使用拼凑添加碎片时,这些会导致右侧边缘条的不对齐(如所附屏幕截图所示) .

请问有没有办法消除空格?我尝试了一个自定义主题(下面的代码)但它没有帮助(有时也会在左侧/右侧放置空间)

未对齐的右侧栏

轴标签(尚未制作)将单独完成,因为当包含在热图对象中时,它们会在拼凑后导致顶栏错位,如第二张图片所示。

当轴标签留在里面时,拼凑后顶栏未对齐

这是 dget() 制作假数据框的文件:

自定义主题

0 投票
1 回答
19 浏览

r - 拼凑而成的空地块空间与所有其他地块大小相同

我正在使用拼凑而成的网格中绘制一系列大小相同的图。我的网格是 5 x 6,预计最后 2 行我只有 4 个地块而不是 5 个。我想要有空地块,以便这些地块显示为常规网格。

使用 cowplot 我可以使用NULL,但发现间距很奇怪,所以改用拼凑而成。 plot_spacer()没有按我预期的那样工作,因为它改变了行其余部分的对齐方式。

示例网格 - 包含 plot_spacer() 的底行没有很好地对齐

有没有简单的方法来保持网格结构?