如何读取netcdf数据并在matplotlib Basemap上绘图
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,这篇文章主要为大家展示了"如何读取netcdf数据并在matplotlib Basemap上绘图",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"如何读取ne
千家信息网最后更新 2025年02月03日如何读取netcdf数据并在matplotlib Basemap上绘图
这篇文章主要为大家展示了"如何读取netcdf数据并在matplotlib Basemap上绘图",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"如何读取netcdf数据并在matplotlib Basemap上绘图"这篇文章吧。
netcdf是一种数据格式;
matplotlib是python中的一个画图插件;
使用python做地图效果的,是工作中的需要,气象数据一般都存在netcdf中,也没有深入学习python语言,只是按照要求达到了个实现效果。
下边的代码是详细列举了如何从netcdf中读取数据,在绘制在basemap地图上的效果;
python的开发环境和下载代码中的各种轮子,请百度搜索去部署,我也不熟,下边的代码是基于python2.7进行开发的,netcdf的样例数据从网上也能下载到;
#设置编码格式,引用所需要的各种类库
#coding=utf-8
import matplotlib.pyplot as plt
import numpy as np
import scipy.ndimage
from mpl_toolkits.basemap import Basemap, cm
import netCDF4 as nc
import matplotlib.colors as colors
#netcdf文件的路径设置,使用反向斜杠,和windows常用不一样
filename="E:/git/grib2json/20171011/20171011-3KM_WEST.nc"
#打开nc文件,从中按照变量获取数据,详细学习nc数据中的格式
data=nc.Dataset(filename)
lat= data.variables['XLAT'][:].squeeze()
lon= data.variables['XLONG'][:].squeeze()
pm25=data.variables['pm25'][:].squeeze()
cutpm= pm25[20, 4, :, :]
#初始化一个basemap的对象,设置坐标系为经纬度,后边是范围
m = Basemap(epsg=4326,resolution='i',llcrnrlat=23,urcrnrlat=37,llcrnrlon=97,urcrnrlon=112)
fig1 = plt.figure()
x, y = m(lon, lat)
# 初始化设置颜色级别,根据不同的值渲染不同颜色
levels = [0, 35, 75, 115, 150, 250, 350, 500]
myRBB = np.array([[153, 219, 231], [26, 161, 206], [0, 123, 217], [103, 255, 136], [10, 227, 50], [50, 244, 62],[228, 243, 62],[226, 151, 62]])
cmap = colors.ListedColormap(myRBB / 255.0)
norm = colors.BoundaryNorm(boundaries=levels, ncolors=len(levels))
#根据以上的x\y\值数组,在地图上进行画图
CS2 = m.contourf(x, y, cutpm,cmap=cmap,alpha=0.75)
#画海岸线和国家边界
m.drawcoastlines(linewidth=0.5)
m.drawcounties(linewidth=0.3)
plt.title('pm25', size=20)
#加载个base自带的地图图片
m.etopo()
#显示绘画窗口
plt.show()
注:使用时,请去掉所有注释,容易报错
以下是效果图:
以上是"如何读取netcdf数据并在matplotlib Basemap上绘图"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
数据
地图
效果
学习
绘图
代码
内容
格式
篇文章
不同
文件
颜色
帮助
开发
从中
变量
只是
国家
坐标
坐标系
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
ark服务器管理
数据中心属于网络安全吗
免疫计算 网络安全
福建省人力资源数据库
存储服务器两台电脑共享
U8不能读取数据库
修改数据库某一字段的值
软件用什么服务器
国家网络安全法实名制实施的时机
网络安全内容文字图片
软件开发桌面秀
怎么从sftp服务器下载文件
数据库双机热备技术
美军软件开发标准
网络安全每周资讯
网络安全行政检查
电脑怎么没有服务器管理器
网络安全行业猎头
动易sf的数据库文件在哪
计算机软件开发技术协议
消防支队 数据库建设招标
北京什么顺公司做网络安全
中国网络安全法主要的要求
航空工业数据库
创新网络技术推广好处
关于数据库开发的书
私人电脑能做游戏服务器吗
知乎 软件开发 学徒
民昇网络技术有限公司
云南服务器托管