爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4654|回复: 9

新手小白请教如何用meteoinfolab读取txt文件,逗号分隔

[复制链接]

新浪微博达人勋

发表于 2021-1-7 16:44:08 | 显示全部楼层 |阅读模式

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

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

x
meteoinfolab功能很强大很好用。但是本小白没有Python编程基础,所以在实际应用中特别吃力,虽然能够复现各教程帖子绘图结果,但是一到自己实际操作过程中发现困难重重。
我现在有一批走航数据,保存在txt文件中,保存的是时间、经度、维度、浓度等数值信息,用逗号间隔。现在我想用强大的meteoinfolab绘制3d地图的功能来绘制走航图,但是在第一步读取数据的时候难住了。能不能求各位走过路过的大神帮帮忙
附件有我的数据

测试数据.txt

84.19 KB, 下载次数: 9, 下载积分: 金钱 -5

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

新浪微博达人勋

发表于 2021-1-7 20:45:00 | 显示全部楼层

回帖奖励 +2 金钱

可以用DataFrame.read_table读取数据为一个DataFrame对象,参考下面的代码:

  1. fn = u'D:/Temp/ascii/测试数据.txt'
  2. df = DataFrame.read_table(fn, delimiter=',', format='%5f', index_col=0,
  3.     index_format='%{yyyy/M/d H:mm:ss}D', encoding='gb2312')
  4. lon = df[u'经度'].values
  5. lat = df[u'纬度'].values
  6. no2 = df['NO2'].values


密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-8 10:03:45 | 显示全部楼层
MeteoInfo 发表于 2021-1-7 20:45
可以用DataFrame.read_table读取数据为一个DataFrame对象,参考下面的代码:

谢谢王老师的解答,
我还没有编程基础,后面会多学习哒
感谢王老师的无私分享
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-8 10:08:57 | 显示全部楼层
通过王老师的帮助我终于把这段代码写出来了,不过还是有一个疑问,为何我添加了网络图层,但是绘制出来的图像没有显示
fn = u'F:/meteoinfo_2.4.1/MeteoInfo/sample/xj/sampledata.txt'
df = DataFrame.read_table(fn, delimiter=',', format='%5f', index_col=0,
    index_format='%{yyyy/M/d H:mm:ss}D', encoding='gb2312')
lon = df[u'经度'].values
lat = df[u'纬度'].values
no2 = df['NO2'].values
levs = arange(0, 100, 10)
#Plot
axesm()
#Add a web map layer
wlayer = webmap(provider='BingHybridMap')
geoshow('country', edgecolor=(204,204,204))
cols = makecolors(len(levs) + 1)
gg = plot(lon, lat, zvalues=no2, levels=levs, colors=cols, size=5)
yticks(arange(30, 55, 5))
xlim(114.7, 115)
ylim(38.4, 38.6)

                               
登录/注册后可看大图


密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-8 10:50:38 | 显示全部楼层
这个是绘图结果
微信截图_20210108104946.png
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2021-1-8 23:35:07 | 显示全部楼层

可能是你网络的问题,可以尝试换个网络地图来源 provider
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-12 10:46:54 | 显示全部楼层
MeteoInfo 发表于 2021-1-8 23:35
可能是你网络的问题,可以尝试换个网络地图来源 provider

嗯嗯,我发现放大缩小图片后不能显示的部分会显示出来,图像能展示出来啦。不过还有一个疑问哦王老师,就是我画出的图像与网络地图有一些错位呢。下面我把结果贴上来
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-12 10:47:31 | 显示全部楼层
这个是显示出来的结果,会有一些错位,不清楚是什么原因
定州走航图.png
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2021-1-12 10:56:52 | 显示全部楼层
Alicekitty 发表于 2021-1-12 10:47
这个是显示出来的结果,会有一些错位,不清楚是什么原因

axesm函数中要设置为Mercator投影:
axesm(proj='merc')
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-12 14:10:06 | 显示全部楼层
MeteoInfo 发表于 2021-1-12 10:56
axesm函数中要设置为Mercator投影:
axesm(proj='merc')

好哒,非常感谢王老师的指导
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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