- 积分
- 3799
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2015-7-6
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 Lighting 于 2018-5-21 15:13 编辑
更新
2017.9.3 此贴中的程序的最新版本请移步 GitHub ,新程序的功能更加完善。
本贴中的源程序不再更新,其中的小bug在github新程序中已经修复。
更新
2017.4.18 读取S/C雷达数据代码重构
之前的 getdbz 和 plotdbz 中读取SA雷达数据的部分并没有非常明确的给出读取反射率,速度,谱宽等信息,而且也没有说明是读取哪一仰角,哪个产品。为了明确这些操作,特对代码进行了重构。
现在可以直接给定仰角,产品等信息进行读取,而且可以选择是否转换坐标为经纬度坐标。重构后的程序同是也支持读取CB波段雷达数据,但由于无CB波段雷达数据,因此未测试对CB波段雷达数据的支持。欢迎提供CB波段数据或提供测试反馈。
注:之前的 getdbz 和 plotdbz 读取速度和谱宽有问题,但读取反射率正常。 所以,大家下载程序时最好下载最新的程序。
=======================================================
分享一个S波段雷达数据处理及绘图程序,并附带两个从中国气象局网站和中国天气网爬取雷达图的程序。
其中S波段雷达数据绘图程序中包含了处理数据的部分,绘图的程序并没有添加处理成经纬度的语句,这部分需要你根据需要自行添加,比如
1) 根据每一个数据网格点距离雷达中心的距离计算出距离雷达的经纬度坐标值,然后加上雷达中心经纬度坐标
2) 不追求极高精确度的情况下,对于中纬度地区可以直接把距离雷达数据中心的距离数据除111km(中纬度地区1°相当于111km)进行转换,然后加上雷达经纬度坐标即可,当然这样做会有偏差
爬取图片的程序内部都有说明。爬取中国天气网雷达图片时也会同时爬取降水和风速等数据。
从中国天气网下载雷达图片,并保存到指定文件夹下,如果文件夹不存在则创建。
- getradar('E:\MATLAB\data','南京')
复制代码
关于双偏振多普勒雷达的数据处理程序以后上传。
由于楼主本身不是专门做雷达的,所以不清楚所读取的速度和谱宽是否有问题,而且其中对距离的处理不知道是否合适,如有疑问欢迎告知。在此拜谢!
代码重构参考了论坛python板块的程序:python读取CMA SA雷达基数据文件及绘图&&叠加自动站风场数据
下面给出新程序的读取示例:
- clear,clc
- dbstop if error
- collev = [ 255,255,255; 0,236,236; 0,160,246; 0,0,246; 0,255,0; ...
- 0,200,0; 0,144,0; 255,255,0; 231,192,0; 255,0,0; ...
- 214,0,0; 192,0,0; 255,0,255; 153,85,201 ]/255.;
- filename = 'Z_RADR_I_Z9250_20150428084500_O_DOR_SA_CAP.bin';
- %% example 1
- radar = 's';
- eleva = 0.5;
- types = 1; % 当 eleva = 0.5,且 dupe = false 时,只有反射率数据
- % 读取仰角为 0.5 时的雷达反射率
- [nx, ny, prod] = read_radar(filename, eleva, radar, types);
- %% example 2
- eleva = 0.5;
- dupe = true;
- types = 2; % 此仰角下没有反射率数据
- % 读取仰角为 0.5 时的速度数据
- [nx, ny, prod] = read_radar(filename, eleva, radar, types, 'dupe', dupe);
- figure;
- pcolor(ny, nx, prod)
- axis square % 保持绘图框为正方形
- shading flat % 去除图形网格线
- %% example 3
- eleva = 1.45;
- types = 1;
- lonlat = [32, 118]; % 雷达经纬度坐标
- % 读取仰角为 1.45 时的雷达反射率
- [lat, lon, dbz] = read_radar(filename, eleva, radar, types, 'lonlat', lonlat);
- dbz(dbz < 0) = 0;
- %% plot
- figure;
- pcolor(lon, lat, dbz)
- axis square % 保持绘图框为正方形
- shading flat % 去除图形网格线
- cid = colorbar;
- % set grid line style for colorbar to solid line
- % set(cid, 'YGrid', 'on', 'GridLineStyle', '-');
- colormap(collev);
- caxis([0, 70]);
- xlabel('longitudes(E)');
- ylabel('latitudes(N)');
- title('Reflectivity');
- fprintf('Congratulation!\n')
复制代码
|
-
-
getdbzpics.m
5.96 KB, 下载次数: 126, 下载积分: 金钱 -5
爬中国气象局网站雷达图
-
-
getradar.m
4.55 KB, 下载次数: 115, 下载积分: 金钱 -5
爬中国天气网雷达图
-
-
plotdbz.m
5.15 KB, 阅读权限: 200, 下载次数: 91, 下载积分: 金钱 -5
S波段绘图程序
-
-
getdbz.m
3.9 KB, 阅读权限: 200, 下载次数: 93, 下载积分: 金钱 -5
S波段数据处理程序
-
-
read_radar.m
7.69 KB, 阅读权限: 200, 下载次数: 85, 下载积分: 金钱 -5
重构后读取SA/SB/CB雷达数据
评分
-
查看全部评分
|