2016-05-05 2 views
2

次のデータをサーフェスプロットとしてプロットしようとしています。メッシュライブラリやpersp3Dは私が望むことをしているようですが、データを入力する正しい方法が見つからないようです。以下のサンプルデータを貼り付けました。このデータをRのサーフェスプロットとしてプロットするにはどうすればよいですか?

V1 V2 V3 
1 1.01 1.30 -113.7410 
2 1.01 1.25 -113.7540 
3 1.01 1.22 -113.7589  
4 1.01 1.20 -113.7605 
5 1.03 1.30 -113.7458 
6 1.03 1.25 -113.7590 
7 1.01 1.20 -113.7605 

ありがとうございます!

答えて

1

サンプルデータが意味をなさないので、基本的に、x、y軸、および単一のz座標に点のグリッド(等間隔!)を作成する必要があります。私はあなたのデータに基づいて何らかの表面プロットを得るために補間を使うことができると思います。

以下の例では、akimainterpを使用して平均値を補間しています。その結果、後に続く形式の点のグリッドが生成されます。

library(rgl) 
library(akima) 

dat<-data.frame(V1=c(1.01,1.01,1.01,1.01,1.03,1.03,1.01), 
       V2=c(1.30,1.25,1.22,1.20,1.30,1.25,1.20), 
       V3=c(-113.7410,-113.7540,-113.7589,-113.7605,-113.7458,-113.7590,-113.7605)) 

s = interp(dat$V1, dat$V2, dat$V3, duplicate="mean") 
persp3d(s$x, s$y, s$z) 

出力:

enter image description here

関連する問題