2016-06-01 2 views
0

R 3D描画の初心者です。私はそれらをプロットしなければならないものをここにR perspエラー:(リスト)オブジェクトを強制的に 'double'と入力することはできません

390.7269606 390.7330561 390.412666 
296.815086 296.5989998 296.6268851 
288.4770256 288.3036607 288.3418227 
287.4134039 287.2562576 287.3429308 
287.0195664 286.8701923 286.9848413 
286.832489 286.6888436 286.814465 
286.8124387 286.6696583 286.8013845 
286.8062249 286.6645971 286.7765071 
286.7860349 286.6451203 286.7765071 
284.8167037 284.6893261 284.7967308 

:私は基本的に、サイズ9x3の行列と行列の各エントリは二重の値である必要があり

###loads the above matrix 
d2 <- read.csv("data.csv", header=T, dec=".",sep = " ") 
###loads x,y,z 
x <- c(2,3,4,5,6,7,8,9,10) 
y <- c(3,4,10) 
z <- d2 
###supposed to draw it! 
persp(x, y, z, 
    zlab="Score", ylab = "C", xlab="T", 
    theta=30, phi=15,ticktype='detailed', 
    col="springgreen", shade=0.5) 

をしかし、私は次のエラーを取得する:

Error in persp.default(x, y, z, zlab = "Score", ylab = "C", : 
    (list) object cannot be coerced to type 'double' 
Calls: persp -> persp.default 
Execution halted 

これはz行列の2倍の値と関係がありますが、なぜそれが問題なのか、それを解決する方法がわかりません。

ヘルプ!

+2

私は 'matrix'に変換する必要があると思います。今は 'data.frame'です – akrun

+0

あなたは正しいです。 – user3639557

答えて

1

'z' はmatrix

z <- as.matrix(d2) 

すべきであり、それが実行する必要があります。

関連する問題