爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: MeteoInfo

图文详解文本格式站点数据绘制等值线图

  [复制链接]

新浪微博达人勋

 楼主| 发表于 2014-3-12 08:55:57 | 显示全部楼层

1、参数说明如下:
     /**
     * Constructor
     *
     * @param minX Minimum x
     * @param maxX Maximum x
     * @param minY Minimum y
     * @param maxY Maximum y
     * @param xNum X number
     * @param yNum Y number
     * @param aInterMethod Interpolation method
     * @param radius Radius
     * @param minNum Minimum number
     */
    public InterpolationSetting(double minX, double maxX, double minY, double maxY, int xNum, int yNum,
            String aInterMethod, float radius, int minNum)

2、要看数据到底是什么格式

3、这两个参数分别是生成图层的图层名称和数据属性字段名称,可以修改。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-3-12 09:08:14 | 显示全部楼层
MeteoInfo 发表于 2014-3-12 08:55
1、参数说明如下:
     /**
     * Constructor

谢谢王老师。数据格式是txt格式,如下或见附件, 数据格式.txt (1.6 KB, 下载次数: 0)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-3-12 09:12:19 | 显示全部楼层
rceclx 发表于 2014-3-12 09:08
谢谢王老师。数据格式是txt格式,如下或见附件,。
对于这种格式数据,可以用mid.OpenLonLatData(DataDi ...

此帖一楼有详细的数据格式说明,你再仔细看看
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-3-12 11:11:50 | 显示全部楼层
MeteoInfo 发表于 2014-3-12 09:12
此帖一楼有详细的数据格式说明,你再仔细看看

王老师,谢谢!。数据格式和读取问题已解决,保存为csv格式即可,顺利出图,如下:
想对图再进一步修改一下:
1、添加显示经纬度,1°*1°间隔或自行设置;
2、要控制输出的图片(png)大小,怎么设置呢?
3、如果改成contour并标注数值的话,如何修改rainLayer = DrawMeteoData.CreateShadedLayer这句命令?
3.12.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-3-12 11:38:25 | 显示全部楼层
rceclx 发表于 2014-3-12 11:11
王老师,谢谢!。数据格式和读取问题已解决,保存为csv格式即可,顺利出图,如下:
想对图再进 ...

1、看脚本中这一段:
#---- 设置ActiveLayoutMap(图层显示)
layoutMap.DrawGridLine = False
layoutMap.DrawNeatLine = False
layoutMap.DrawGridLabel = False
layoutMap.DrawGridTickLine = False

经纬线间隔用GridXDelt和GridYDelt属性设定

2、用MapLayout的SetPaperSize方法,比如:
mapLayout.SetPaperSize(540, 550)
layoutMap的大小也应该改变

3、DrawMeteoData.CreateContourLayer
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-3-12 11:57:04 | 显示全部楼层
MeteoInfo 发表于 2014-3-12 11:38
1、看脚本中这一段:
#---- 设置ActiveLayoutMap(图层显示)
layoutMap.DrawGridLine = False

谢谢,良师益友啊!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-3-12 13:44:21 | 显示全部楼层
学习一下再说!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-3-12 17:15:59 | 显示全部楼层
MeteoInfo 发表于 2014-3-12 11:38
1、看脚本中这一段:
#---- 设置ActiveLayoutMap(图层显示)
layoutMap.DrawGridLine = False

王老师,按您的指导已经顺利修改好,又遇到了几个问题:
1、把 Lambert投影改成Lon_Lat 或Alber_Conic_Equal_Area时下面的参数怎么调?
我把 25、47 、105修改了也不行。projInfo = ProjectionInfo("+proj=lcc+lat_1=25+lat_2=47+lon_0=105")
2、经纬度的标签想设置成左下格式,设置layoutMap.GridLabelPosition=LeftBottom提示name 'LeftBottom' is not defined。
3、同时CreateShadedLayer和CreateContourLayer,但图例显示的是contour的,调整两个图层的前后顺序也不行?如果再contour上标示数值怎么设置呢?
谢谢!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-3-12 21:27:34 | 显示全部楼层
rceclx 发表于 2014-3-12 17:15
王老师,按您的指导已经顺利修改好,又遇到了几个问题:
1、把 Lambert投影改成Lon_Lat 或Alber_Conic_E ...

1、如果是Lon_Lat就不用设置投影了,投影用的Proj4,字符串的设定可以参考此网页:http://remotesensing.org/geotiff/proj_list/

2、layoutMap.GridLabelPosition = GridLabelPosition.LeftBottom

3、通过设置LayoutLegend的LegendLayer属性可以控制图例显示的是哪个图层的。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-3-12 23:18:54 | 显示全部楼层
MeteoInfo 发表于 2014-3-12 21:27
1、如果是Lon_Lat就不用设置投影了,投影用的Proj4,字符串的设定可以参考此网页:http://remotesensing. ...

王老师,谢谢!今天的问题太多,麻烦您了!
像这样的语法 layoutMap.GridLabelPosition = GridLabelPosition.LeftBottom
和LayoutLegend的LegendLayer属性从MeteoInfo中怎么查询呢?
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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