本文实例讲述了Python实现将数据写入netCDF4中的方法。分享给大家供大家参考,具体如下:
nc文件为处理气象数据文件。用户可以去https://www.lfd.uci.edu/~gohlke/pythonlibs/ 搜索netCDF4,下载相应平台的whl文件,使用pip
安装即可。
这里演示的写入数据操作代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# -*- coding:utf-8 -*-
import numpy as np
'''
输入的data的shape=(627,652)
'''
def write_to_nc_canque(data,file_name_path):
import netCDF4 as nc
lonS = np.linspace( 119.885 , 120.536 , 652 )
latS = np.linspace( 29.984 , 29.358 , 627 )
da = nc.Dataset(file_name_path, 'w' , format = 'NETCDF4' )
da.createDimension( 'lons' , 652 ) #创建坐标点
da.createDimension( 'lats' , 627 ) #创建坐标点
da.createVariable( "lon" , 'f' ,( "lons" )) #添加coordinates 'f'为数据类型,不可或缺
da.createVariable( "lat" , 'f' ,( "lats" )) #添加coordinates 'f'为数据类型,不可或缺
da.variables[ 'lat' ][:] = latS #填充数据
da.variables[ 'lon' ][:] = lonS #填充数据
da.createVariable( 'u' , 'f8' ,( 'lats' , 'lons' )) #创建变量,shape=(627,652) 'f'为数据类型,不可或缺
da.variables[ 'u' ][:] = data #填充数据
da.close()
write_to_nc_canque(one, 'D://new.nc' )
'''
输入的data的shape=(627,652)
'''
def write_to_nc_wanmei(data,file_name_path):
import netCDF4 as nc
lonS = np.linspace( 119.885 , 120.536 , 652 )
latS = np.linspace( 29.984 , 29.358 , 627 )
da = nc.Dataset(file_name_path, 'w' , format = 'NETCDF4' )
da.createDimension( 'lon' , 652 ) #创建坐标点
da.createDimension( 'lat' , 627 ) #创建坐标点
da.createVariable( "lon" , 'f' ,( "lon" )) #添加coordinates 'f'为数据类型,不可或缺
da.createVariable( "lat" , 'f' ,( "lat" )) #添加coordinates 'f'为数据类型,不可或缺
da.variables[ 'lat' ][:] = latS #填充数据
da.variables[ 'lon' ][:] = lonS #填充数据
da.createVariable( 'u' , 'f8' ,( 'lat' , 'lon' )) #创建变量,shape=(627,652) 'f'为数据类型,不可或缺
da.variables[ 'u' ][:] = data #填充数据
da.close()
write_to_nc_wanmei(one, 'D://new1.nc' )
|
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/piaodexin/article/details/77773120