3

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")

なぜこうなった?

ご協力いただきありがとうございます!マット

4

1 に答える 1

2

labelsの引数に値を指定しないaxis3dと、6 つの目盛りが付いた軸が得られます。引数に4 つの値のみを持つベクトルを指定するため、それらの値をリサイクルしてすべての目盛りをカバーするlabelsように見えます。axis3d

引数に値を指定して、目盛りaxis3dを配置するデータ値を指定します。at

axis3d('x--', at = x, labels=row.names(rmatrix),color="black")

rgl.surface()psセグメンテーション違反を避けるために、前に次の行を追加する必要がありました

rgl.open()
于 2013-03-11T20:35:37.493 に答える