2016-02-07 37 views
0

我想繪製兩個黑洞合併波形我有一個.h5文件,我從公共波形目錄。我是使用python的初學者,所以我不知道在這種情況下該怎麼做。我有一個.h5文件,裏面有一個.dat文件,我想用它來製作一個情節。我從公共波形目錄得到了文件在:引力波形圖從h5文件

http://www.black-holes.org/waveforms/data/DisplayDownloadPage.php/?id=SXS:BBH:0001#

文件的名稱是:

rhOverM_Asymptotic_GeometricUnits.h5 

它在Lev5目錄。該.h5文件的內容中描述:

https://www.black-holes.org/waveforms/docs.html

有,我認爲描述,我要繪製的波形文件中的數據集。問題是我不知道如何進入數據集。據我得到的做:

import numpy as np 
import h5py 
from pylab import plot,show 

f = h5.py.File("rhOverM_Asymptotic_GeometricUnits.h5","r") 
ks = f.keys() 

在這裏,我不知道如何創建將進入繪圖功能的X和Y軸。我假設我需要屬於h5py模塊的另一個屬性,但我甚至不確定我是否使用了正確的術語。任何幫助,將不勝感激。

回答

1

試試這個:

import matplotlib.pyplot as plt 
import h5py 

f = h5py.File("rhOverM_Asymptotic_GeometricUnits.h5", "r") 
data = f['Extrapolated_N2.dir/Y_l2_m-1.dat'] 
plt.plot(data[:, 0], data[:, 1], label='column1') 
plt.plot(data[:, 0], data[:, 2], label='column2') 
plt.legend() 
plt.show() 
+0

太感謝你了!我一直試圖這樣做幾天。你能向我解釋爲什麼你的數據= f [....]'。你怎麼確定這是數據集?另外,從圖中可以看出它有兩組不同的數據。什麼顯示你有兩個不同的數據集? –

+0

另外,在'Extrapolated_N2.dir/Y_12_m-1.dat'中是否有一個目錄,您可以在其中查看顯示.dat文件的目錄?如果是這樣,我將如何能夠看到它? –

+1

您可以使用[hdfview](https://www.hdfgroup.org/products/java/hdfview/)查看hdf文件中的所有內容。 – Avernial