簡単な質問...
私は行列を持っています、しましょうsay A = magic(512)
。として表示しますimagesc(A)
。さて、私は、1pxがx =15[um]と言うことに等しいことを知っています。軸の値をpxではなくumで表示するにはどうすればよいですか?ありがとう
あなたがしたいのはとを変更することXTickLabel
ですYTickLabel
。これでうまくいくはずです:
A = magic(512);
imagesc(A)
set(gca,'XTickLabel',15*get(gca,'XTick'));
set(gca,'YTickLabel',15*get(gca,'YTick'));
XTick
とXTickLabel
は通常同じであるという事実を使用します。これにより、XTickLabel
最初に文字をから数値に変換する必要がなくなります。(もちろんYも同じです)。
多くの場合、私は2つのスケールを見るのが好きです。私は2番目の軸をオーバーレイすることによってそれを行います。
スニペット:
A = magic(512);
clf
imagesc(A)
a1 = gca;
xlabel('px');ylabel('px');
set(a1,'Box','off');
a2 = axes('Color','none','XLim',get(a1,'XLim')/15,'YLim',get(a1,'YLim')/15,...
'XAxisLocation','top','YAxisLocation','right',...
'Position',get(a1,'Position'),'YDir','reverse',...
'XColor','r','YColor','r');
xlabel('um');ylabel('um');
a2
単位のx座標とy座標を使用して描画できるという利点があります[um]
。