2024-05-23 17:20:39 发布
网友
我是h5py的新手,我的实际任务是用MODIS子集创建hdf5堆栈。我可以创建包含所有漂亮数据的堆栈,但不能创建或附加空间参考系统。目标是将单个数据集从堆栈加载到ArcGIS中的查看器中,并将其放置在正确的位置。在
如何为堆栈提供正确的空间/投影信息?在
您可以将空间坐标附加到HDF5数据集上,这些数据集只是与第一个数据集关联的其他数据集。如果要指示特定维度具有特定的物理单位,可以使用HDF5维度比例API来标记该维度:H5DSset_label()。在
H5DSset_label()
在h5py中,可以使用h5py.dims.create_scale()和h5py.dims.attach_scale()和h5py.dims.label来设置标签。在
h5py.dims.create_scale()
h5py.dims.attach_scale()
h5py.dims.label
例如,要将两个数据集附加到foo.h5:/data以指定纬度和经度,并且它们以度为单位,可以首先按如下方式设置它们的标签(f是HDF5文件):
foo.h5:/data
f['data'].dims[0].label = 'degrees' f['data'].dims[1].label = 'degrees'
然后要实际添加坐标,首先需要创建一个刻度,然后附加数据集(其中f['phi']是一个预先存在的数据集,其中您的坐标位于):
f['phi']
然后可以使用
[dim.label for dim in f['data'].dims]
维度的比例
f['data'].dims[1][0]
或者
f['data'].dims[1]['latitude']
您可以将空间坐标附加到HDF5数据集上,这些数据集只是与第一个数据集关联的其他数据集。如果要指示特定维度具有特定的物理单位,可以使用HDF5维度比例API来标记该维度:
H5DSset_label()
。在在h5py中,可以使用
h5py.dims.create_scale()
和h5py.dims.attach_scale()
和h5py.dims.label
来设置标签。在例如,要将两个数据集附加到
foo.h5:/data
以指定纬度和经度,并且它们以度为单位,可以首先按如下方式设置它们的标签(f是HDF5文件):然后要实际添加坐标,首先需要创建一个刻度,然后附加数据集(其中
^{pr2}$f['phi']
是一个预先存在的数据集,其中您的坐标位于):然后可以使用
维度的比例
或者
相关问题 更多 >
编程相关推荐