[英]3D plots and grid.arrange in R
我正在尝试绘制三个3D图,并同时显示所有三个。 对于其他图,我一直使用软件包gridExtra中的grid.arrange函数。 但是,我的3D绘图出现错误。 我得到的错误是:“ gList(list(xyz.convert = function(x,y = NULL,z = NULL))中的错误:“ gList”中仅允许'grobs'”
我的代码看起来像这样:
cont1<-data.frame(matrix(rnorm(300), nrow=10, ncol=3))
pre1<-data.frame(matrix(rnorm(300), nrow=10, ncol=3))
post1<-data.frame(matrix(rnorm(300), nrow=10, ncol=3))
library(scatterplot3d)
attach(as.data.frame(cont1))
p<-scatterplot3d(X1,X2,X3, main="3D Scatterplot")
fit <- lm(X3 ~ X1+X2)
p$plane3d(fit)
attach(as.data.frame(pre1))
l<-scatterplot3d(X1,X2,X3, main="3D Scatterplot")
fit <- lm(X3 ~ X1+X2)
l$plane3d(fit)
attach(as.data.frame(post1))
m<-scatterplot3d(X1,X2,X3, main="3D Scatterplot")
fit <- lm(X3 ~ X1+X2)
m$plane3d(fit)
require(gridExtra)
grid.arrange(p,l,m)
我怎样才能解决这个问题?
我不确定ggplot2图grid.arrange
可以将grid.arrange
用于任何东西...这是使用par
的潜在解决方案。 如果要1x3排列设置mfrow=c(1,3)
或3x1,则mfrow=c(3,1)
library(gridExtra)
library(scatterplot3d)
cont1<-data.frame(matrix(rnorm(300), nrow=10, ncol=3))
pre1<-data.frame(matrix(rnorm(300), nrow=10, ncol=3))
post1<-data.frame(matrix(rnorm(300), nrow=10, ncol=3))
par(mfrow=c(2,2))
p<-with(cont1, scatterplot3d(X1,X2,X3, main="3D Scatterplot"))
fit <- lm(X3 ~ X1+X2)
p$plane3d(fit)
l<-with(pre1, scatterplot3d(X1,X2,X3, main="3D Scatterplot"))
fit <- lm(X3 ~ X1+X2)
l$plane3d(fit)
m<-with(post1, scatterplot3d(X1,X2,X3, main="3D Scatterplot"))
fit <- lm(X3 ~ X1+X2)
m$plane3d(fit)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.