排列 R 图:如何排列 VIM 包的图?

我想使用 marginplot()(VIM 包)生成多个图,然后将它们排列成一个大图。我尝试使用 grid.arrange(grid/gridExtra 包)但它不起作用。错误是,期望 grob 作为输入。所以我尝试首先将 marginplot 转换为 ggplot (as.ggplot) 或 grob (as.grob) 但这不起作用。有没有人知道如何安排情节?

library(VIM)
library(ggplotify)
library(grid)
library(gridExtra)

x <- cars[,c("speed","dist")]
marginplot(x)
y <- cars[,"dist")]
marginplot(y)

p <- qplot(1,1)
#p2 <- as.ggplot(marginplot(x))
r <- rectGrob(gp=gpar(fill="grey90"))
grid.arrange( r,p,r,ncol=2)

我用汽车创建了一个小代码,在那里我设法安排了灰色方块和 qplots。把我不能添加边距图。

lj449028498 回答:排列 R 图:如何排列 VIM 包的图?

使用基本图会发生此错误。在这里学习:grid.arrange from gridExtras exiting with "only 'grobs' allowed in 'gList'" after update

grid.arrange 旨在与“网格图形对象”(grobs)一起使用,例如 ggplot2

人们可以找到等效的网格图或使用基本图形方法来堆叠图。 试试这个:

library(VIM)

x <- cars[,c("speed","dist")]
y <- cars[,"dist")]

par(mfrow = c(2,2))
marginplot(x)
marginplot(y)
plot(rnorm(100))
hist(rnorm(100)) 
par(mfrow = c(1,1)) #reset this parameter

enter image description here

本文链接:https://www.f2er.com/849764.html

大家都在问