Matlab 如何更改图像轴标签
我试图用一些纬度/经度来更改图像轴标签,但我找不到如何做。我尝试了一些基本命令,如:Matlab 如何更改图像轴标签,matlab,matlab-figure,Matlab,Matlab Figure,我试图用一些纬度/经度来更改图像轴标签,但我找不到如何做。我尝试了一些基本命令,如: imagesc(data) axis(meshgrid([-180:20:180],[-90:20:90])) colorbar 但是这些表情出现了: imagescdata,axismeshgrid[-180:20:180],-90:20:90],彩色条 | |和&&运算符的操作数必须可转换为逻辑标量 价值观 Error in axis>allAxes (line 448) result = all(
imagesc(data)
axis(meshgrid([-180:20:180],[-90:20:90]))
colorbar
但是这些表情出现了:
imagescdata,axismeshgrid[-180:20:180],-90:20:90],彩色条
| |和&&运算符的操作数必须可转换为逻辑标量
价值观
Error in axis>allAxes (line 448)
result = all(ishghandle(h)) && ...
Error in axis (line 57)
if ~isempty(varargin) && allAxes(varargin{1}).
有人能帮我吗?仅供参考,我的图像轴标签是从0到N的数据顺序
我想要的结果是一个看起来像世界地图的图像,以分划/网格线为轴。应该是这样的:
我不能说我完全理解你的意思,所以来吧。要向轴添加标签,请使用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');
这将设置左下角刻度增长的数字 根据您的问题,我推断您希望将x轴标签设置为-180到180,将y轴标签设置为-90到90。为此,您应该更改axis对象的XTickLabel和YTickLabel属性。请注意,您还需要通过相应地修改XTick和YTick属性来调整每个轴中的记号数 因此,假设您的图像存储在矩阵数据中,并使用imagescdata显示,下面介绍如何将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(:)))
它应该是这样的:
你好你必须比……更能提供信息。。。但它不起作用。你能提供一个期望结果的例子吗?M_Map对这类事情很有用:我尝试过你的脚本,但结果与我期望的结果不一样。世界地图我几乎无法回答这个评论。我无法在这里复制你所有垂直和/或水平翻转的建议