3

我想对齐 R 中使用该image()函数生成的两个图。

示例代码:

# Load package
library(cowplot)

# Plot sample image
image <- image(matrix(rnorm(1000), 100,100))

# Align plots
plot_grid(image, image)

但是,当我这样做时,情节不会出现。我错过了什么吗?或者cowplot不能处理从图像函数生成的图吗?

4

2 回答 2

2

您需要做一些工作才能将它们存储在您的环境中。如果你检查image你会看到它是NULL. 所以你必须记录它,然后绘制它。

p <- recordPlot()
plot.new()
image(matrix(rnorm(1000), 100,100))
p

plot_grid(p, p, nrow = 2)

在此处输入图像描述

于 2018-10-24T19:06:08.430 回答
1

如果您想使用cowplot 绘制base-R 图,我强烈建议您使用cowplot 的当前开发版本。在那个版本中,您只需将图像代码转换为公式(通过~在前面添加)即可。

library(cowplot)
#> 
#> 
#> *******************************************************
#> Note: cowplot does not change the default ggplot2 theme
#> anymore. To recover the previous behavior, execute:
#>   theme_set(theme_cowplot())
#> *******************************************************

# Plot sample image
image <- ~image(matrix(rnorm(1000), 100,100))

# Align plots
plot_grid(image, image)

reprex 包(v0.2.1)于 2018 年 10 月 27 日创建

于 2018-10-27T16:42:27.023 回答