2011-11-22 13 views
5

私はしばらくの間グーグルで行ってきましたが、私の問題の解決策を見つけることができませんでした。私はアマチュアのMathWorks社のMATLABユーザーと私は、3D散布図を作成したいと思い、このために私は、3D空間内のいくつかのポイントを含む行列を持つ:Z値で色付けされた3D散布図

>> size(A) 

    ans = 

     2511   3 

私は「scatter3」機能を使用して3D散布図を作成することができました、しかし、今私は3Dポイントを色分けするのにちょっと固執しています。

scatter3(A(:、1)、A(:、2)、A(:、3))。

これは、データをプロットしますが、今はその人自身はあまり重要ではありません 色... Z値に基づいてカラーコードを追加したいと思います。それは虹のスペクトルか温度スペクトルか何でもよい。私はちょうどポイントのz値を区別するためにそれらを色分けしたいと思います。

誰でも私にこれを手伝ってもらえますか?ありがとうございました!

+0

私の答えは方法によって、ストレートドキュメントからです:http://www.mathworks.com/help/techdoc/ref/scatter3.html –

答えて

7

さらに引数をscatter3に渡す必要があります。

scatter3(X,Y,Z,S,C); 

SCあなたが色を指定することができているときに、(ベクターによる)各マーカーまたは全てのマーカーのための単一の領域のための領域を指定できます。 Cがベクトルの場合、その値は現在のカラーマップに線形にマッピングされます。カラーマップを変更するには、たとえばcolormap(jet)を呼び出します。 colormapのドキュメントを参照してください。

ご迷惑をおかけして申し訳ありません。ショートバージョン:

scatter3(A(:,1),A(:,2),A(:,3),9,A(:,3)); 
colormap(jet); %# or other colormap 
+0

が正常に動作しているあなたに感謝...私はどういうわけか、サイズを変更しようとしましたが、色の引数を渡さなかった...愚かな私...ありがとう! – evident

関連する問題