Pra*_*nto 6 matlab matlab-figure
我试图用一些纬度/经度改变图像轴标签,但我找不到如何做到这一点.我尝试了一些基本命令,如:
imagesc(data)
axis(meshgrid([-180:20:180],[-90:20:90]))
colorbar
Run Code Online (Sandbox Code Playgroud)
但这些表达出现了:
imagesc(数据),axis(meshgrid([ - 180:20:180],[ - 90:20:90])),colorbar操作数到|| 和&&运算符必须可转换为逻辑标量值.
Run Code Online (Sandbox Code Playgroud)Error in axis>allAxes (line 448) result = all(ishghandle(h)) && ... Error in axis (line 57) if ~isempty(varargin) && allAxes(varargin{1}).
有谁能够帮我?仅供参考,我的图像轴标签是数据顺序(从0到N).
我想要的结果是图像看起来像世界地图,带有经纬网/网格线作为轴.应该看起来像这样:
Eit*_*n T 11
根据您的问题,我推断您要将x轴标签设置为-180到180,并将y轴标签设置为-90到90.为此,您应该更改轴对象的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)
Run Code Online (Sandbox Code Playgroud)
同样,这里是如何将y轴上的刻度标签更改为-90到90:
yticklabels = -90:20:90;
yticks = linspace(1, size(data, 1), numel(yticklabels));
set(gca, 'YTick', yticks, 'YTickLabel', flipud(yticklabels(:)))
Run Code Online (Sandbox Code Playgroud)
它应该是这样的:
归档时间: |
|
查看次数: |
27071 次 |
最近记录: |