如何在图中调整x轴?

10次浏览(最近30天)
VERMA UTKARSH
VERMA UTKARSH 2021年8月20日
编辑: ANKUR库马尔 2021年8月23日
你好,
我试图绘制一个全局图(如图所示),其中我的x轴从180到-180经度,但我需要调整它从0经度开始,并在0经度之前结束(也显示了一个样本)。
请建议如何实现这一点?
主要人物:
主图
我想要:

接受的答案

ANKUR库马尔
ANKUR库马尔 2021年8月20日
编辑:ANKUR库马尔 2021年8月23日
您可以使用circshift以圆形方式旋转数据。一旦你有了圆形移动的数据,你就可以操纵海岸线来获得从0到360的纵向范围。
下面是一个使用再分析数据的例子。
clc
清晰的
文件=“gdas.txt”%这实际上是一个netcdf数据,
% %,但我只改变了文件扩展名,以附加这个文件在这里的答案
朗= ncread(文件,“朗”);
lat = ncread(文件,“纬度”);
tmp = ncread(文件,“tmp”);
负载海岸线
数字
contourf(经度、纬度、tmp ',“linecolor”“没有”
持有
情节(coastlon coastlat,“k -”“线宽”, 0.2)
caxis(320年[200])
colormap (jet (12))
daspect((1、3))
xlim(180年[-180])
colorbar
coastlon =国防部(coastlon, 360);
coastlon (abs (diff (coastlon)) > 100) =南;注释这一行的结果是多个
%图中的水平线
数字
contourf(经度、纬度、circshift (tmp、大小(经度,1)/ 2,1)”,“linecolor”“没有”
持有
coastlat情节(coastlon - 180,“k -”“线宽”, 0.2)
指数=总和(经度= = (gca,“XTick”), 2);
xticklabels(经度(逻辑(指数))+ 180)
caxis(320年[200])
colormap (jet (12))
daspect((1、3))
colorbar
1评论
VERMA UTKARSH
VERMA UTKARSH 2021年8月23日
嗨Ankur,
谢谢你的帮助,我已经手工完成了,但你的代码似乎更方便和通用的方法来获得这些类型的结果。

登录评论。

更多的答案(2)

KSSV
KSSV 2021年8月20日
要限制坐标轴 xlim ylim
把你所需要的标签贴在轴线上 xticklabel yticklabel
1评论
VERMA UTKARSH
VERMA UTKARSH 2021年8月20日
你好,谢谢你的回复。
我已经阅读了你提到的所有文档,但我没有找到解决方案,我也尝试重新安排经度,从0经度开始,以0结束,但它显示以下错误:
使用contourf时的错误(第57行)
向量X必须严格递增或严格递减,没有重复值。
上面的错误是因为我的数据经度值从-180开始到180。

登录评论。


史蒂文的主
史蒂文的主 2021年8月20日
由于您正在处理地图数据,您可能想要探索 地图轴 这是映射工具箱的一部分(如果这个工具箱可用)。在创建这个地图图形时,您可以控制许多地图轴的属性(包括投影以及经度和纬度限制)。
1评论
VERMA UTKARSH
VERMA UTKARSH 2021年8月23日
嗨,史蒂文,
谢谢你的建议,我将探索地图轴。

登录评论。

s manbetx 845


释放

R2018a

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!