爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 62801|回复: 57

[作图] NCL中经纬度加°N

  [复制链接]

新浪微博达人勋

发表于 2015-4-7 10:33:45 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 loftydongshi 于 2016-2-16 10:16 编辑

本人已经找过好多次NCL加上角标的,尤其经纬坐标加小圈圈的放弃了好多次。。。由于愚钝没有找到。。
在NCL的官网都翻的不耐烦了,今天终于让我给找到了。。欲哭无泪啊。

http://www.ncl.ucar.edu/Applications/text.shtml  
;*************************************************; text_7.ncl;
; Concepts illustrated:
;   - Drawing superscripts/subscripts in a text string using function codes
;   - Drawing degree symbols in tickmark labels
;   - Explicitly setting tickmarks and labels on the bottom X axis
;************************************************
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
load"$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
;************************************************
begin
;************************************************
; read in netCDF file
;************************************************
a = addfile("$NCARG_ROOT/lib/ncarg/data/cdf/uv300.nc","r")  
u = a->U(0,:,8);
************************************************
; create plot
;************************************************
  wks = gsn_open_wks("ps","text")      
res              = True                     
; plot mods desired  res@tiMainString = "Adding a degree symbol to a text string"
res@tmXBMode     = "Explicit"               
; explicit lables   res@tmXBValues   = (/-90,-60,-30,0,30,60,90/)
; where located
; to put a degree symbol in a string, we use the function code "~" to
; superscript a "o" into the text. Note that the function code is a "~"
; in this example because we have changed the default function code of a
;  ":" in our .hluresfile to be a "~". The "~S~ indicates a superscript,
; and the "~N~" indicates back to normal space.  
res@tmXBLabels   = (/"90~S~o~N~","60~S~o~N~","30~S~o~N~","0","30~S~o~N~",\  "60~S~o~N~","90~S~o~N~"/)  
plot=gsn_csm_xy(wks,u&lat,u,res)              
; create xy plotend结果见图1
最主要的就是~S~**~N~
前面的S表示我的右上角标开始定义了
右侧的N表示右上角标就此结束
中间的**是你想加点啥就加点啥
(受不了的是90~S~o~N~这中间的那个度是用小写字母O才代替的。。。)

为坐标轴的经纬度添加度更简便的方法,请大家收看19、21楼,傅 Dee的提醒~~感谢傅~~

res@pmTickMarkDisplayMode = "Always"     ; Turn on map tickmarks网址 http://www.ncl.ucar.edu/Applications/Scripts/maponly_16.ncl

下面是在我的程序里面的小小应用

wks = gsn_open_wks(format,name)        
res                   = True                     
res@tiMainString      = "Avg. 30~S~o~N~S - 30~S~o~N~N"  
      
结果见图2

希望对大家有帮助!!















图1.png
图2.PNG
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2020-7-29 21:59:48 | 显示全部楼层
res@pmTickMarkDisplayMode = "Always"只适用于经纬度图,纬度-高度剖面图是不是只能通过res@tmXBLabels   = (/"90~S~o~N~","60~S~o~N~","30~S~o~N~","0","30~S~o~N~",\  "60~S~o~N~","90~S~o~N~"/)  
密码修改失败请联系微信:mofangbao
回复 支持 2 反对 0

使用道具 举报

新浪微博达人勋

发表于 2016-2-16 09:29:01 | 显示全部楼层
我也是在NCL官网里的例子里看到的http://www.ncl.ucar.edu/Applications/Scripts/maponly_16.ncl,在设置的属性里加了那个命令之后,坐标轴就都显示°N,°E等等了,见图
ssteof_annual_nanhai.000002.png
密码修改失败请联系微信:mofangbao
回复 支持 2 反对 0

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2015-6-2 13:27:36 | 显示全部楼层
837078493 发表于 2015-6-2 11:36
请问楼主那 如果是103°50‘的50’怎么加呢

~S~**~N~  前面的S表示我的右上角标开始定义了  右侧的N表示右上角标就此结束。50就直接写在前面就可以了吧,103~S~。~N~50~S~‘~N~
你试试,这个我没有尝试过呢
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

发表于 2016-2-15 14:29:31 | 显示全部楼层
  res@pmTickMarkDisplayMode = "Always"  也可以 就不需要挨个设置了
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

发表于 2015-4-7 13:00:04 | 显示全部楼层
谢分享~
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2015-4-7 13:45:27 | 显示全部楼层

已经从这里汲取了太多,得回馈一下~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-4-7 14:21:30 | 显示全部楼层
loftydongshi 发表于 2015-4-7 13:45
已经从这里汲取了太多,得回馈一下~

看你这个是在最后修图喽,这就毕业不再读了么?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-4-7 16:45:14 | 显示全部楼层
多谢楼主的分享
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-4-7 20:36:12 | 显示全部楼层
真是太感谢楼主了,我之前也是怎么找都没找到。感谢分享啊。。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-4-8 13:14:59 | 显示全部楼层
lqouc 发表于 2015-4-7 14:21
看你这个是在最后修图喽,这就毕业不再读了么?

是在修图,哈哈,被发现了~现在还在等成绩呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-4-8 13:16:24 | 显示全部楼层

不用谢~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-4-8 13:16:53 | 显示全部楼层
飏逸雅 发表于 2015-4-7 20:36
真是太感谢楼主了,我之前也是怎么找都没找到。感谢分享啊。。。

感同身受啊,能解决问题那就是最好啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-2 11:36:10 | 显示全部楼层
请问楼主那 如果是103°50‘的50’怎么加呢
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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