scatterplot3d - 更改轴范围

时间:2015-07-21 14:14:30

标签: r plot

我使用scatterplot3d生成几个图,我想在每个图中保持比例一致(我试图显示随时间的变化,所以这是必不可少的)。我目前的代码如下(绝不优雅,因为我是初学者!):

library(scatterplot3d)
file<-read.csv("DAY2.csv")
axis1<-file$axis1
axis2<-file$axis2
axis3<-file$axis3
s3d <- scatterplot3d(axis1, axis2, axis3)
colors <- c("#9900FF", "#E69F00", "#339900", "#0000FF")
colors <- colors[as.numeric(file$treatment)]
s3d <- scatterplot3d(file[,1:3], pch = 16, color=colors, xlab =
"Axis 1", ylab = "Axis 2", zlab = "Axis 3")
legend(s3d$xyz.convert(0.4, 0.4, -0.1), col= c("#9900FF", "#E69F00", 
"#339900", "#0000FF"), bg="white", lty=c(1,1), lwd=2, yjust=0,      
legend = c("high perf", "low perf"), cex = 0.7)

是否可以指定轴范围以使这些图之间保持一致?我查看了小插图,但是没有关于此的信息。

提前致谢,

2 个答案:

答案 0 :(得分:1)

你可以在sccaterplot3d函数中使用xlim,ylim和zlim参数,例如:

library(scatterplot3d)
x <- c(1, 2, 3)
y <- c(2, 2, 2)
z <- c(6, 7, 8)
max_x <- max(x)
min_x <- min(x)
max_y <- max(y)
min_y <- min(y)
max_z <- max(z)
min_z <- min(z)
s3d <- scatterplot3d(x,y,z, pch=6, angle=45, color="red",
        xlim=c(min_x,max_x),
        ylim=c(min_y,max_y),
        zlim=c(min_z,max_z))

如果修改xlim,ylim或zlim将改变轴。

答案 1 :(得分:-1)

请使用xlimylimzlimxyz限制(最小,最大) 。