2011-11-10 4 views
1

現在、軸には、そのインデックスを表す値が行列でマークされています。私はそれらのラベルをメッシュグリッド内のポイントに対応付けるようにラベルを付けたいと思います。 1対1の対応があるので、このマッピングは確かに可能です。どうすればこれを達成できますか?MATLAB - 行列をプロットする際のティックマーク値の変更

[x z] = meshgrid(-10:.25:10,-10:.25:10); 
B = zeros(81,81); 
for i=1:81 
    for j=1:81 
     [theta,phi,r] = cart2sph(x(i,j),0,z(i,j)); 
     Px = (1/16)*(r.^4).*exp(-r).*(sin(pi/2-phi).^2).*(cos(theta).^2); 
     B(i,j)=Px; 
    end 
end 

subplot(3,3,1); 
imagesc(B); 

Figure 1: Axes with undesirable labels.

答えて

2

、以下のようにするだけimagesc()に引数を追加します。 xとyの範囲を指定できます。

x_range = [-10:.25:10]; 
z_range = x_range; 
[x z] = meshgrid(-10:.25:10,-10:.25:10); 
B = zeros(81,81); 
for i=1:81 
    for j=1:81 
     [theta,phi,r] = cart2sph(x(i,j),0,z(i,j)); 
     Px = (1/16)*(r.^4).*exp(-r).*(sin(pi/2-phi).^2).*(cos(theta).^2); 
     B(i,j)=Px; 
    end 
end 

subplot(3,3,1); 
imagesc(x_range,z_range,B); 
関連する問題