0

我正在尝试使用 cowplot 来组合一些 ggplot2 图。它应该是直截了当的,但是我的 R 或 Rstudio surly 中的某些东西坏了。我不知道什么。我可以让它与 grid.arrange 一起工作,但我的 rmarkdown 文件中的输出并没有那么好。我将代码分解到最小数量以重新创建错误,并且超出了 rmarkdown

library(ggplot2)
library(Hmisc)
library(cowplot)


x <- c(1, 8, 9)
y <- c(1, 5, 9)
supply1 <- data.frame(bezier(x, y, evaluation = 500))

g1 <- ggplot(x = 0:10, y = 0:10, geom = "blank") +
  geom_path(data = supply1, aes(x = x, y = y), size = 1, colour = "BLUE")

g2 <- ggplot(x = 0:10, y = 0:10, geom = "blank") +
  geom_path(data = supply1, aes(x = x+1.5, y = y+1.5), size = 1, colour = "RED")


plot_grid(g1, g2,
          ncol = 2, 
          nrow = 1)

我收到此错误:

FUN("text"[[1L]], ...) 中的错误:

主题元素“文本”具有 NULL 属性:边距、调试

我必须分离cowplot,但可以使用以下代码与gridExtra接近:

library(ggplot2)
library(Hmisc)
library(gridExtra)


x <- c(1, 8, 9)
y <- c(1, 5, 9)
supply1 <- data.frame(bezier(x, y, evaluation = 500))

g1 <- ggplot(x = 0:10, y = 0:10, geom = "blank") +
  geom_path(data = supply1, aes(x = x, y = y), size = 1, colour = "BLUE")

g2 <- ggplot(x = 0:10, y = 0:10, geom = "blank") +
  geom_path(data = supply1, aes(x = x+1.5, y = y+1.5), size = 1, colour = "RED")

grid.arrange(g1,g2,
             ncol = 2,
             nrow = 1)

此代码输出: grid.arrange plot

事实证明,如果我尝试在加载 ggplot2 和 cowplot 库的情况下制作任何 ggplot,我会收到“FUN 消息错误”。R 3.1.3,RStudio 0.99.903,cowplot 0.4.0,ggplot2 2.1.0

我至少重新安装了所有东西两次,并在另一台计算机上遇到相同的错误情况。我可以让它以有限的方式工作。如果我在运行除 plot_grid() 块之外的所有其他代码之后等待调用 cowplot 库,那么它将编织并给我 cowplot 输出。我不能仅在 Rmarkdown 中在 R 脚本中重新创建它,但是我必须让它成为 markdown 的最后一块,之后任何 ggplot 尝试都会导致编织失败。

短期我使用 grid.arrange() 并且只是接受结果,长期我希望有 cowplot 作为一个选项。

有什么想法或建议吗?

4

1 回答 1

1

显然这是自 R 3.3.1 以来已修复的错误,因此升级到此版本或更新版本应该会消失。

于 2016-11-15T13:59:58.350 回答