我正在使用r中的rgl包来绘制一些数据。正如在此处所做的那样:
http://www.r-bloggers.com/creating-3d-geographical-plots-in-r-using-rgl/
由于某种原因,比例尺与图表不对齐。
我改变了X轴和Z轴的比例以增加浮雕,我最初认为这是造成问题的原因,但在下面的示例中,即使我将0.02更改为1,也会出现问题。
library(rgl)
rdata <- c(0.8926,0.8986,0.9478,0.9672,0.916,0.912,0.9324,0.9532,0.9488,0.9376,0.921,0.927,0.9728,0.956,0.9318,0.9202)
labs <-c(100,200,500,1000)
rmatrix <- matrix(rdata, nrow=4,ncol=4,)
dimnames(rmatrix) <- list(labs,labs)
y <- as.matrix(rmatrix)
x <- 0.02*(1:nrow(y))
z <- 0.02*(1:ncol(y))
rgl.surface(x, z, y, color="red", back="lines")
axis3d('x--', labels=row.names(rmatrix),color="black")
为什么会这样?
感谢您的帮助! 垫
答案 0 :(得分:2)
如果没有为labels
中的axis3d
参数提供值,我会得到一个带有六个刻度线的轴。由于您为labels
参数提供了只有四个值的向量,因此看起来axis3d
会回收这些值以覆盖所有刻度线。
通过为axis3d
参数提供一个值,告诉at
您希望放置刻度线的数据值:
axis3d('x--', at = x, labels=row.names(rmatrix),color="black")
P.S。我必须在rgl.surface()
之前添加以下行以避免出现段错误
rgl.open()