-Python情节的代码

时间:2014-06-17 12:52:21

标签: python python-2.7 matplotlib plot h5py

我从未使用过Python,我从手册中看到了一段代码,我很想知道它是什么意思。

这是手册中的代码:

    import h5py
    h5file = h5py.File('Output/ScottCreek250b/simulation.results.DY.hdf5')
    channel_flows = h5file['Channel/Qc_out'][...]
    plt.plot(channel_flows[:, 0])
    plt.ylim((-0.01,0.01))
    plt.title('Streamflow at outlet', fontweight='bold')
    plt.ylabel('Flow ($\mathbf{m^3/s}$)')
    plt.xlabel('Model time-steps (24 hours)')

我想知道这两行是什么意思,尤其是[...]以及[:, 0][:, :10]代表什么。

    channel_flows = h5file['Channel/Qc_out'][...]
    plt.plot(channel_flows[:, 0])

    soil_stores = h5file['Soil/V_s'][...]
    plt.plot(soil_stores[:, :10])

1 个答案:

答案 0 :(得分:3)

numpy文档不会解释为什么使用索引,特别是h5文件中的第一个:

实际复制数据需要[...行上的h5file];如果没有,则传递参考,这可能并不总是人们想要的。但是,在这种情况下,它似乎是不必要的,可能只是习惯的力量。

之后,您将离开二维数据阵列(注意:不是您建议的3D),其中第一个维度在整个范围内编入索引(通过使用鞋底':&# 39;),第二个内部维度被索引为单个值(0)或前十个值的范围(:10,其中0位于0:10是默认值,可以省略。)