1

简单的问题...

我有一个矩阵,让say A = magic(512)。我将其显示为imagesc(A). 现在,我知道,1px 等于假设 x=15 [um]。如何以 um 而不是 px 显示轴值?谢谢

4

2 回答 2

4

您要做的是更改XTickLabeland YTickLabel。这应该可以解决问题:

A = magic(512);
imagesc(A)
set(gca,'XTickLabel',15*get(gca,'XTick'));
set(gca,'YTickLabel',15*get(gca,'YTick'));

XTick您使用和XTickLabel通常相同的事实,这样您就避免了XTickLabel必须先将字符从转换为数字。(当然,Y 也是如此)。

于 2013-02-20T07:26:38.470 回答
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]

于 2013-02-20T09:22:51.637 回答