我想给你一些背景信息,以便你更好地理解我的问题。
根据实验结果,我使用 h5py 填充了一个包含大量列的大 hdf5 表。完成所有测量后,我需要绘制并拟合一些结果。这已经在工作了,但是当我想绘制拟合函数时,因为我的数据没有按具有“x”轴数据的列排序,而不是单行,我得到了一个丑陋的背-第四行(我会展示给你看,但我还没有足够的声誉)。
所以我的第一个想法是在绘图和拟合之前对数组进行排序。我尝试按照我在这里找到的几个指南进行操作,但是我加入的阵列的形状错误,那是我认为可能有更好的方法的时候。
所以我的问题是,从使用 h5py 保存在 hdf5 文件中的更大数组中获取数组按其中一列排序的最佳方法是什么?
这就是我目前的做法:
假设我已经从 hdf5 文件中提取了列(尽管也许这可以改进!),现在我正在弥补它们。
x_d = array([5, 2, 10, 4])
y_d = array([0.2, 1.0, 4.1, 0.1])
wtype = np.dtype([('x', x_d.dtype), ('y', y_d.dtype)])
w = np.empty(len(x_d), dtype=wtype)
w['x'] = x_d
w['y'] = y_d
w.sort(order='x')