我试图改变一些纬度/经度的图像轴标签,但我找不到怎么做。我尝试了一些基本命令,例如:
imagesc(data)
axis(meshgrid([-180:20:180],[-90:20:90]))
colorbar
但这些表情出现了:
imagesc(数据)、轴(meshgrid(-180:20:180、-90:20:90)、色条操作数和&&操作符必须转换为逻辑标量值。 axis>allAxes中的错误(第448行)结果= all(ishghandle(h)) &&…如果~是空(Varargin) && allAxes(varargin{1}),则在轴(第57行)中出现错误。
有人能帮我吗?FYI,我的图像轴标签是数据顺序(从0到N)。
我想要的结果是一幅像世界地图一样的图像,并以网格线为轴线。它应该看起来像这
发布于 2013-02-25 08:34:37
从你的问题我推断你想把x轴标签从-180设置为180,y轴标签从-90设置到90。为此,您应该更改axis对象的XTickLabel
和YTickLabel
属性(注意,还需要通过相应修改XTick
和YTick
属性来调整每个轴中的滴答数)。
因此,假设您的图像存储在矩阵data
中,并使用imagesc(data)
显示它,下面是如何将x轴中的滴答标签从-180更改为180:
xticklabels = -180:20:180;
xticks = linspace(1, size(data, 2), numel(xticklabels));
set(gca, 'XTick', xticks, 'XTickLabel', xticklabels)
类似地,下面是如何将y-轴中的滴答标签从-90改为90:
yticklabels = -90:20:90;
yticks = linspace(1, size(data, 1), numel(yticklabels));
set(gca, 'YTick', yticks, 'YTickLabel', flipud(yticklabels(:)))
它应该是这样的:
发布于 2013-02-25 08:15:37
我不能说我完全理解你的意思,就这样吧。要将label
添加到轴,请使用xlabel
和ylabel
,例如:
xlabel('time [sec]'); ylabel('Amplitude');
若要更改轴的标签,请使用以下内容:
plot(1:4)
set(gca,'Xtick',1:4,'XTickLabel',{'a', 'b', 'c', 'd'})
使用imagesc
时,您可能需要添加以下行:
set(gca, 'YDir', 'reverse');
这会使滴答上的数字在左下角生长.
https://stackoverflow.com/questions/15071088
复制相似问题