Netcdf4 Python 保存成功,可视化失败
Netcdf4 for Python successful save, failed to visualize
当我想使用 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 24 February 2009
http://meteora.ucsd.edu:80/~pierce/ncview_home_page.html Copyright (C)
1993 through 2009, David W. Pierce Ncview comes with ABSOLUTELY NO
WARRANTY; for details type ncview -w'. This is free software licensed
under the Gnu General Public License version 3; type
ncview -c' for
redistribution details.
no displayable variables found!
它说 no displayable variables found!
,但是通过 ncdump -h test.nc
我能够看到以下几行;
netcdf test {
// global attributes:
:description = "The data in this file was created for a test" ;
group: grp1 { dimensions:
dim = 30 ; variables:
double data1(dim) ;
double data2(dim) ; } // group grp1
group: grp2 { dimensions:
dim = 30 ; variables:
double data1(dim) ;
double data2(dim) ; } // group grp2 }
我的 Python
脚本中是否遗漏了什么? (我认为 ncview
没问题,因为当我不将它们保存在 netcdf 组 中时,我能够看到完全相同的数据)
您可以尝试升级您的ncview版本; 1.93g 已经很老了。 2.1.6(2015 年秋季发布)可在此处获取:http://meteora.ucsd.edu/~pierce/ncview_home_page.html
当我想使用 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 24 February 2009 http://meteora.ucsd.edu:80/~pierce/ncview_home_page.html Copyright (C) 1993 through 2009, David W. Pierce Ncview comes with ABSOLUTELY NO WARRANTY; for details type
ncview -w'. This is free software licensed under the Gnu General Public License version 3; type
ncview -c' for redistribution details.no displayable variables found!
它说 no displayable variables found!
,但是通过 ncdump -h test.nc
我能够看到以下几行;
netcdf test {
// global attributes: :description = "The data in this file was created for a test" ;
group: grp1 { dimensions: dim = 30 ; variables: double data1(dim) ; double data2(dim) ; } // group grp1
group: grp2 { dimensions: dim = 30 ; variables: double data1(dim) ; double data2(dim) ; } // group grp2 }
我的 Python
脚本中是否遗漏了什么? (我认为 ncview
没问题,因为当我不将它们保存在 netcdf 组 中时,我能够看到完全相同的数据)
您可以尝试升级您的ncview版本; 1.93g 已经很老了。 2.1.6(2015 年秋季发布)可在此处获取:http://meteora.ucsd.edu/~pierce/ncview_home_page.html