爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 7807|回复: 8

[程序设计] 用网格数据画等值线填充的全球分布图

[复制链接]

新浪微博达人勋

发表于 2014-4-30 15:16:37 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
各位大神 我现在有一个144*24的网格,每个网格点里面都存有数据,我现在想要把网格里面的数据用contourf画成那种等值线填充的图,但是我想把横纵坐标对应经度和纬度,每一个格子对应2.5°,并且我想加上海岸线等地图的地图,我应该怎么画啊~~~真的真的希望大家帮助我一下~~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-4-30 16:10:26 | 显示全部楼层
可以安装m_map插件,给个链接 http://www2.ocgy.ubc.ca/~rich/map.html,论坛里也有,自己找一下
另外给两个建议:
1)contourf虽然不错,但有时效果并不好。可以用pcolor,然后再hold on上contour。效果可以比对一下
     装了m_map后所有命令加m_即可,例如m_contourf、m_contour、m_pcolor,自己试试
2)你的数据分辨率太低,画出来很容易一块一块,你可以适当的采用插值
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-4-30 16:22:30 | 显示全部楼层
对了,如果你不想用m-map插件也可以直接用命令操作。可以先下一个岸线数据,网上有很多,m_map里面也有,推荐一个http://www.ngdc.noaa.gov/mgg/shorelines/shorelines.html(点击左侧Online Coastline Extractor)或者直接进去http://www.ngdc.noaa.gov/mgg_coastline/
例如:
pcolor(lon,lat,var);
shading interp;
hold on
contour(lon,lat,var); % 自己调节等值线
plot(cosatline(:,1),coastline(:,2));  % 一般岸线提供的就是经纬度
hold off

当然上面也可以直接用contourf 然后hold on岸线

基本命令就是上面,剩下的就是修饰了。

剩下给个建议:
1)利用好好google,例如岸线数据输入关键词coastline即可;再比如你的问题是matlab画岸线,可以直接在google中找到。有时间的话,可以多google,可以学到很多东西,只有自己动手查了,以后再碰到陌生问题也可以解决了。
2)碰到问题,先自己解决,多查多问,用得多了也就熟悉了

密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-4-30 22:34:08 | 显示全部楼层
无径之林 发表于 2014-4-30 16:22
对了,如果你不想用m-map插件也可以直接用命令操作。可以先下一个岸线数据,网上有很多,m_map里面也有,推 ...

恩恩,非常感谢您的帮助,我下载好了岸线数据,那是对这句命令plot(cosatline(:,1),coastline(:,2));不太理解,请您再给予指导~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-5-1 08:42:31 | 显示全部楼层
zhumomo 发表于 2014-4-30 22:34
恩恩,非常感谢您的帮助,我下载好了岸线数据,那是对这句命令plot(cosatline(:,1),coastline(:,2));不太 ...

哦,我知道这句命令的意思了,昨天脑子有一点反应慢了..
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-5-1 10:01:39 | 显示全部楼层
zhumomo 发表于 2014-5-1 08:42
哦,我知道这句命令的意思了,昨天脑子有一点反应慢了..

再麻烦您一下,我画出海岸线以后,想把陆地和海洋用不同的颜色区分开来,应该怎么办吖?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-5-5 11:04:59 | 显示全部楼层

回帖奖励 +1 金钱

zhumomo 发表于 2014-5-1 10:01
再麻烦您一下,我画出海岸线以后,想把陆地和海洋用不同的颜色区分开来,应该怎么办吖?

一般可以通过编程判断Land/water,然后相应设置。但你的数据分辨率太低,即使插值
海陆分界也基本呈锯齿状,建议还是使用m_map吧,里面会直接覆盖掉陆地,而且可以
有不同分辨率选择
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-24 13:54:00 | 显示全部楼层
zhumomo 发表于 2014-4-30 22:34
恩恩,非常感谢您的帮助,我下载好了岸线数据,那是对这句命令plot(cosatline(:,1),coastline(:,2));不太 ...

那请问楼主能不能解释一下呢??小生不懂
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-9-7 13:44:15 | 显示全部楼层

回帖奖励 +1 金钱

学习学习。。。。。。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表