爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: 尽头的尽头

[作图] (更新)最最最准确的中国地图(附带南海,精确到市界)

    [复制链接]

新浪微博达人勋

发表于 2018-7-24 16:30:58 | 显示全部楼层
hzwjy 发表于 2012-12-20 20:46
这个不错。
如果用NCL 6.1,用shapefile来添加中国国境线、省界什么的都是很简单的。

您好,这个shapefile可以分享下吗 谢谢 我把站点插值到格点上出现数值超出边界怎么改 123.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-24 16:53:14 | 显示全部楼层
感谢大神的分享 我用这个cnmap画出了中国地图如下图,我想问怎么只显示中国的地图,旁边的那些怎么去掉? 1.png
我的脚本如下:
res=True
res@gsnDraw                        = False
res@gsnFrame                       = False
res@mpMinLatF         = min_lat
res@mpMaxLatF         = max_lat
res@mpMinLonF         = min_lon
res@mpMaxLonF         = max_lon
res@pmTickMarkDisplayMode="Always"

res@mpDataSetName               = "Earth..4"
res@mpDataBaseVersion           = "Ncarg4_1"
res@mpFillDrawOrder             = "PreDraw"
res@mpFillOn                    = True
res@mpLandFillColor             = "white"
res@gsnLeftString="station"
res@mpAreaMaskingOn=True
res@mpOutlineOn=True
map=gsn_csm_map(wks,res)
;;;;;;;;;绘制站点
mkres=True
mkres@gsMarkerColor="green"
mkres@gsMarkerSizeF=0.003
mkres@gsMarkerIndex=16
  dum=gsn_add_polymarker(wks,map,lon,lat,mkres)
;;;;添加中国地图和河流
cnres           = True
cnres@china     = True       ;draw china map or not
cnres@river     = True       ;draw changjiang&huanghe or not
cnres@province  = False     ;draw province boundary or not
cnres@nanhai    = False     ;draw nanhai or not
cnres@diqu      = False       ; draw diqujie or not
chinamap = add_china_map(wks,map,cnres)
draw(map)
frame(wks)
end

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

新浪微博达人勋

 楼主| 发表于 2018-7-24 17:48:10 | 显示全部楼层
subtropical 发表于 2018-7-24 16:53
感谢大神的分享 我用这个cnmap画出了中国地图如下图,我想问怎么只显示中国的地图,旁边的那些怎么去掉?
...

res@mpOutlineOn=True这个设置成False试试
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-24 18:29:30 | 显示全部楼层
尽头的尽头 发表于 2018-7-24 17:48
res@mpOutlineOn=True这个设置成False试试

哇哦 大神果然厉害 谢谢,还想请教一个问题,我把站点降水资料插值成格点画图,结果如图所示,我要怎么把超出边界的去掉?谢谢您 1.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-7-25 08:36:11 | 显示全部楼层
subtropical 发表于 2018-7-24 18:29
哇哦 大神果然厉害 谢谢,还想请教一个问题,我把站点降水资料插值成格点画图,结果如图所示,我要怎么把 ...

mask一下,http://www.ncl.ucar.edu/Applications/shapefiles.shtml,参考21,22,23例子
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-25 09:57:05 | 显示全部楼层
本帖最后由 subtropical 于 2018-7-25 09:59 编辑

谢谢大神,我看了这个例子,然后仿照这样来做,首先根据官网说的shapefile_mask_data[size=13.3333px] function in [size=13.3333px]shapefile_utils.ncl[size=13.3333px] 下载了shapefile_utils.ncl这个脚本,但是报错了说这个下载的脚本里面有句出问题了,我就看了下但是这个怎么改呢?麻烦您帮忙看下,谢谢您了
3.png

2.png
我的部分脚本:
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/shea_util.ncl"
load "$NCARG_ROOT/lib/ncarg/nclscripts/cnmap/cnmap.ncl"
load "./shapefile_utils.ncl"
begin

......
;---------------------------------使用cressman插值函数
rscan=(/1,0.5,0.25/)
r_final=obj_anal_ic_Wrap(lon, lat, rian, olon, olat, rscan, False)
data_mask = shapefile_mask_data(r_final,"D:/cygwin/app/ncl/lib/ncarg/nclscripts/cnmap/cnmap.shp",True)    ;---shapefile_mask_data


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

新浪微博达人勋

 楼主| 发表于 2018-7-25 15:56:03 | 显示全部楼层
subtropical 发表于 2018-7-25 09:57
谢谢大神,我看了这个例子,然后仿照这样来做,首先根据官网说的shapefile_mask_data function in [/back ...

还需要一些属性设置的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-25 16:46:54 | 显示全部楼层
尽头的尽头 发表于 2018-7-25 15:56
还需要一些属性设置的

哦哦 那需要什么属性设置? 可以教我一下吗? 谢谢您了{:eb511:}
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-7-25 22:28:15 | 显示全部楼层
subtropical 发表于 2018-7-25 16:46
哦哦 那需要什么属性设置? 可以教我一下吗? 谢谢您了

例子里面有啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-7-26 11:18:23 | 显示全部楼层

您是说ncl官网第21那个例子吗?我好好看看学习,谢谢
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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