问题标签 [cowplot]
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.
r - 情节必须只包含一个面板;多面散点图上的边际箱线图
我对编程很陌生,但我设法使用以下链接中的建议为散点图制作多面散点图和边际箱线图:http ://www.lreding.com/nonstandard_deviations/2017/08/19/cowmarg/
我的问题是如何在多面散点图上制作边际箱线图?
我的代码是:
简单的散点图:
黑白散点图:
带有标记轴的散点图:
带有标记轴和经典主题的散点图:
带有标记轴的散点图和具有更改形状的经典主题:
带有刻面和白色/灰色的箱线图:
在这里我得到了一个错误:
get_panel(grob) 中的错误:绘图必须只包含一个面板
r - 使用 coord_equal() 时使用 cowplot::plot_grid() 垂直对齐不同高度的图
cowplot::plot_grid()
我正在尝试使用并垂直对齐两个 ggplot 对象。这通常很简单,使用align = "v"
.
但是,当使用 ggplots 时,这种方法会失败,coord_equal()
因为plot_grid()
在强制纵横比时无法修改轴。相反,默认设置是保持每个绘图的高度相同。
我可以通过玩弄并让rel_heights
论点恰到好处来强制我的目标,但这不是一个可行的解决方案,因为我有许多动态的情节要构建。这里,y轴对齐,所有轴的坐标仍然相等。
ggplot2::ggplotGrob()
我已经看到了许多使用and来解决类似问题的方法grid::grid_draw()
,但是在使用时没有什么能解决这个问题coord_equal()
。也许最好的解决方案根本不使用cowplot::plot_grid()
,或者解决方案可能以某种方式动态确定并将正确的值传递给rel_heights
. 我想我更喜欢后面的选项,以便能够轻松使用cowplot::plot_grid()
. 或许可以从这个相关的方法中找到一些有用的灵感。
r - 使用 coord_equal() 时垂直对齐不同高度的多面 ggplots
我正在尝试将两个 FACETED ggplot 对象与coord_equal()
使用cowplot::plot_grid()
oregg::ggarrange()
并垂直对齐它们。
该egg::ggarrange()
方法适用于 UNFACETED 地块,解决方案在这里发布。
但是,egg::ggarrange()
当包含刻面时,解决方案会失效。这些图正确对齐,但 y 轴的单位是 x 轴的单位的两倍。有关如何将其概括为刻面的任何建议?
r - 如何使用带有单个 x 轴标签的构面网格创建两个 y 轴标签
我一直在努力以ggplot
我想要的方式显示这些图。我的数据有 2 个因素,quarter
并且species
. 站将在 x 轴上,值在 y 轴上,成分将与facet_wrap
. 我想quarter
用形状和species
颜色来区分。
问题是我正在尝试复制在 SigmaPlot 中完成的图形。它是 4x4 网格图,第一列的前两行是空的,以便放置图例。我最初的计划是使用 制作两个单独的面facet-wrap
,然后将它们组合起来,但是,这并不能保持 4x4 的排列,而是将其转换为 1x2,这会破坏绘图的对齐方式并缩小更大的面网格。
我的下一个想法是单独创建每个图,然后使用cowplot将它们排列在网格中。这显示了我希望它们如何排列的图,但由于单位不同,我无法弄清楚如何拥有两个 y 轴标签。一个标签将位于最左边的两个图的中心,一个位于下一列 4 个图的左侧。
我正在尝试使用此代码(只需复制下面的示例数据,然后运行):
这会产生:
但我希望它像这样排列,上面的 XX 和 YY 图在大小上与其他图进行归一化(这是使用单独的图完成的,并使用plot_grid
):
来自更大集合的示例数据:
r - 结合 purrr 和 cowplot 制作绘图网格
ggplot2
我已经创建了一个数字列表列,purrr
现在我想用cowplot::plot_grid()
它们将它们组合成一个图。我怎样才能做到这一点?有一种蛮力的方法可以做到这一点,但是当我不先验地知道列表列中有多少元素时,这可能不起作用。
由reprex 包(v0.2.0) 于 2018 年 3 月 12 日创建。
r - 将空图添加到构面,并与另一个构面组合
使用这个SO 解决方案,我创建了一个带有两个“空”图的构面,目的是与另一组 facet_wrap 图相结合,如下所示。目的是为不同的单位测量提供两个 y 轴标签。如何使网格布局看起来像顶部图像,产生我想要的排列,而不是轴标签?这是通过plot_grid
单独的地块完成的。如第二张图片所示,我当前的输出无法正确缩放并与其他图重叠,但提供了轴标签。我有下面的示例数据,只需复制并运行代码即可输入。
示例日期如下: