IDL采用axis给IMAGE绘图绘制经纬度

之前的文章里,我提到可以用IMAGE函数自带的MAP_PROJECTION属性来使IDL的图像显示经纬度。如图:

但是之后老师告诉我说,这是错误的,倒不是说MAP_PROJECTION的使用是错误的,而是这幅图像本来就是投影好的。所以考虑另一种方法。代码如下:

  spdimg = image(wdspd,rgb_table=2,title=diplayname)
  grdx= axis('x',location=[0,0],axis_range=[0,360],coord_transform=[0,0.25],minor=0,major=19)
  grdy= axis('y',location=[0,0],axis_range=[-90,90],coord_transform=[-90,0.25],minor=0,major=7)

主要的实现是下面的两行代码,效果如下:

这样的效果就是正确的了。

IDL8.2采用IMAGE绘图(附带colorbar/经纬度/保存等功能实现) IDL关于axis函数中coord_transform设置

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

已有 4 条评论

  1. 黑羊
    1#
    黑羊  · 2014-04-19 09:59

    有个情况咨询一下,这种方法,只能在坐标轴显示数字,如果是小范围的一个区域,坐标得用到分和秒的话,要怎么做?

      1. 木丁西
        木丁西  · 2014-04-19 10:07

        你可以参考这篇文章:http://malagis.com/idl-on-axis-function.html,通过设置axis的major设置一级刻度线的数目,通过minor设置二级刻度

          1. 黑羊
            黑羊  · 2014-04-19 10:28

            十分感谢!

              1. 木丁西
                木丁西  · 2014-04-19 11:20

                不必客气~

发表评论