爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6807|回复: 9

[讨论] 如何利用经纬度数据提取某个区域的数据

[复制链接]

新浪微博达人勋

发表于 2019-3-25 19:55:14 | 显示全部楼层 |阅读模式

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

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

x
大家好,我有源反衍的逐日资料,数据的结构是115*160(115是行,160是列,数据中不包含经纬度信息)但是我有同样格式的经度数据,是115*160,纬度数据也是115*160。利用contourf函数画等高线填色图,m_contourf(XLONG,XLAT,NO2,lim);lim是等高线的间隔。现在我想要的是提取某个区域的数据,比如河北省的数据,那么该怎么办才可以利用经纬度去提取河北省的数据呢?
想到利用find函数,
index_lon = find(XLONG>=113 & XLONG<=119);index_lat = find(XLAT>=36 & XLAT<=42);
NO2_sum61_tmp1 = NO2_sum61(1);%MATLAB中不可以对已索引的数组在进行索引,所以创建一个临时文件NO2_sum61_tem1。
hebeidata_date1 = NO2_sum61_tmp1(index_lon & index_lat);

但是index_lon和index_lat的大小不一样。就出现这个错误:Error using  & Matrix dimensions must agree.
还有就是后来发现find的结果是线性索引的列向量。


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

新浪微博达人勋

发表于 2019-3-25 20:06:22 | 显示全部楼层
当你提取某个地区的信息后,二维数组就没意义了,那就先用reshape把原来的数组变为一维再提取吧
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-3-27 15:10:06 | 显示全部楼层
Wetter 发表于 2019-3-25 20:06
当你提取某个地区的信息后,二维数组就没意义了,那就先用reshape把原来的数组变为一维再提取吧

你好,感谢你的帮助,下面我将XLONG和XLA转化成为了一维数组,但是在选区域的时候,您知道index_lon和index_lat的大小不一样该怎么解决呢?
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-3-27 21:49:40 | 显示全部楼层
inpolygon函数可以用
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-3-28 11:35:04 | 显示全部楼层
将经纬度和数组放在一个二维的3*XX的矩阵,再利用find对两列经纬度做处理。
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-3-28 15:35:48 | 显示全部楼层
Wetter 发表于 2019-3-28 11:35
将经纬度和数组放在一个二维的3*XX的矩阵,再利用find对两列经纬度做处理。

对的,我的想法就是这样,因为经纬度和数据是对应的,想要通过直接查找经纬度来找数组。
我的经纬度数据是分开的,可以利用cat将经纬度和数据组合在一起吗?具体的我还是不太理解您的意思,可以在具体一点吗?
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-3-29 09:40:40 | 显示全部楼层
zaoxianshen 发表于 2019-3-28 15:35
对的,我的想法就是这样,因为经纬度和数据是对应的,想要通过直接查找经纬度来找数组。
我的经纬度数据 ...

x=[lat;lon;data],大概这个样子
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-3-29 09:49:36 | 显示全部楼层
我觉得是这样的,
首先用GIS导出区域经纬度信息,然后再用FIND函数
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-3-30 19:39:59 | 显示全部楼层
不会飘的云 发表于 2019-3-29 09:49
我觉得是这样的,
首先用GIS导出区域经纬度信息,然后再用FIND函数

感谢您的回答,能不能利用ArcGIS将数据整合在地图上,在将河北省选出,这样是否可以将河北省的数据提取出来?
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2019-3-30 21:20:00 | 显示全部楼层
zaoxianshen 发表于 2019-3-30 19:39
感谢您的回答,能不能利用ArcGIS将数据整合在地图上,在将河北省选出,这样是否可以将河北省的数据提取出 ...

应该可以,楼主可以尝试一下
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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