Netcdf4 for Python成功保存,无法可视化

时间:2016-01-28 20:45:30

标签: python numpy netcdf

当我想用python在现有的netcdf文件上添加新组时,我很难过。 MWE适用于我的机器。

MWE

import os 
import numpy as np
from scipy.io import netcdf
from netCDF4 import Dataset

try:
    os.remove('test.nc')
except OSError:
    pass

mydata = np.linspace(1,30,30)

g=Dataset('test.nc','w',format='NETCDF4') 
g.description = 'The data in this file was created for a test'
g.close()

#Do stuff

g=Dataset('test.nc','r+',format='NETCDF4') 
g1 = g.createGroup('grp1')
g1.createDimension('dim', len(mydata))
ncdata = g1.createVariable('data1', 'f8', ('dim',)); ncdata[:] = mydata
ncdata = g1.createVariable('data2', 'f8', ('dim',)); ncdata[:] = mydata
g.close()


#Do stuff

g=Dataset('test.nc','r+',format='NETCDF4') 
g1 = g.createGroup('grp2')
g1.createDimension('dim', len(mydata))
ncdata = g1.createVariable('data1', 'f8', ('dim',)); ncdata[:] = mydata
ncdata = g1.createVariable('data2', 'f8', ('dim',)); ncdata[:] = mydata
g.close()

但是,我无法使用ncview打开我的文件,相反,我得到了

  

Ncview 1.93g David W. Pierce 2009年2月24日   http://meteora.ucsd.edu:80/~pierce/ncview_home_page.html版权所有(C)   1993年至2009年,David W. Pierce Ncview绝对没有   保证;有关详细信息,请键入ncview -w'. This is free software licensed under the Gnu General Public License version 3; type ncview -c'对于   再分配详情。

     

找不到可显示的变量!

它说no displayable variables found!,但通过ncdump -h test.nc 我能够看到以下几行;

  

netcdf test {

     

//全局属性:                   :description ="此文件中的数据是为测试而创建的。 ;

     

组:grp1 {dimensions:           昏暗= 30;变量:           double data1(dim);           double data2(dim); } // group grp1

     

组:grp2 {dimensions:           昏暗= 30;变量:           double data1(dim);           double data2(dim); } // group grp2}

我在Python脚本中遗漏了什么? (我在想ncview是可以的,因为当我不将它们保存在 netcdf组中时,我能够看到相同的数据。

1 个答案:

答案 0 :(得分:0)

您可以尝试升级您的ncview版本; 1.93克已经很老了。 2.1.6(2015年秋季发布)可在此处获取:http://meteora.ucsd.edu/~pierce/ncview_home_page.html