正如手册上所介绍的netcdf4是一个十分强大的库,比如支持无限维度,然而日常使用的话只想用它打开文件画画图什么的,今天试了好一会儿,终于得出来一个比较简单的方法。
调用Dataset打开文件,如:
import netcdf4 as nt
rootgroup = nt.Dataset('')
rootgroup.variables,查看变量类型,会得出该文件变量的详细信息,截取其中一节为例:
意思十分清楚了,shape是3600,7200,名字是LST_Night_CMG,等等......
由于我这里下载到的是MODIS卫星上一个我都不知道是什么的全球气象产品,那么我们就直接将全球经纬度用numpy中的linspace创建等差数列充当坐标轴。
contourf好像不能直接识别netcdf4的variables类型的东西,一直报错TypeError: __array__() takes no arguments (1 given),没办法我不会啊,只好把它转化成numpy的array,手册好像没有教我怎么办。。。。。
数据这个地方,由于缺测的存在(开尔文表示地表温度不可能有0值吧?),还需调用contourf的levels来限定范围来避免不需要的干扰。画出的图如下: