1

Matlab で一種の「密度マップ」をプロットしたいのですが、適切なツールがまだ見つかりません。

x が (x_min と x_max) の間にあり、y が (y_min と y_max) の間にある「連続した」データがあります。これらのポイント (x_i、y_i) の各ペアには、0 から 1 までの値が関連付けられています。

この情報を 2D グラフにプロットしたいと思います。(x_i,y_i) を含む各小さな正方形で、プロットが値 0 の場合は黒、値 1 の場合は白、中間値の場合は適切なグレーの色合いになります。 .

これはMatlabで簡単に行うことができますか?


http://www.mathworks.com/help/images/ref/mat2gray.htmlはまさに私が必要とすることをしているようです。

4

3 に答える 3

1

連続的(等間隔?)の意味がわからないので、座標に言及する理由があること以外に、私の答えはあまり多くの仮定を立てません(通常のメッシュの場合は、imageまたはのみimagesc)。したがって、x 座標と y 座標の間隔が不均一である可能性があると仮定するだけで、少なくとも単調に増加するサンプルを試しsurfview(2)ください。

surf(X,Y,data)
view(2)
colormap gray

デフォルトでは、次のオプションでプロパティをsurf設定します。FaceColor'flat'

flat— の値によってCData、サーフェスの各面の色が決まります。最初の頂点のカラー データによって、面全体のカラーが決まります。

つまり、値によって色合いが決まります。

于 2013-10-18T20:01:16.380 に答える
0

データが にdataあり、x 座標と y 座標が とにあると仮定するxy、その方法は次のとおりです。

imagesc(x, y, data) % to create a heat map
colormap(gray) % for gray levels
caxis([0 1]) % to set 0 to black and 1 to white
axis xy % if you want the y axis to point up
colorbar % to display the colorbar
于 2013-10-18T20:16:21.440 に答える