python读取nc文件并绘制

python读取nc文件并绘制——以中国1km分辨率月均降雨量nc文件为例

我这里下载了2020年中国1km分辨率月均降雨量nc文件,具体步骤请看如下代码:

import netCDF4 as nc # 读取nc文件需要下载netCDF4库
import matplotlib.pyplot as plt
import numpy as np

# 打开下载的.nc文件
nc_file = nc.Dataset('CN_Prec_MonthlyMean_1km_2020.nc', 'r')  # 'r'表示只读模式

# 查看文件的维度
# print(nc_file.dimensions)    
# 查看文件的变量
# print(nc_file.variables.keys()) # dict_keys(['latitude', 'longitude', 'pre', 'time'])

latitude = nc_file.variables['latitude'][:]  # ''中是你想要读取的变量名称
longitude = nc_file.variables['longitude'][:]
[X, Y] = np.meshgrid(latitude, longitude) # 合成矩阵,将向量latitude和longitude定义的区域转换成矩阵X和Y
pre = nc_file.variables['pre'] # pre是一个三维数组
# 下面是pre的一些属性
#
#float32 pre(time, longitude, latitude)
    #units: mm/day
    #long_name: Monthly mean (daily) Precipitaiton
#unlimited dimensions: time
#current shape = (12, 7397, 4251)
time = nc_file.variables['time'][:]
print(latitude, longitude, pre, time)

plt.contourf(Y, X, pre[6, :, :]) # 从0开始索引,这里画的是7月份的数据
plt.colorbar(label="pre", orientation="horizontal")
plt.show()

nc_file.close() # 关闭nc文件

绘制结果如下:
python读取nc文件并绘制_第1张图片

你可能感兴趣的:(python,开发语言)