1
我的問題是繪製兩個不同的頻率和數值間隔的csv文件。我只是想在單位時間內比較heartRate和motionData。如何在同一圖表中繪製不同頻率的各種數據?
我使用matplotlib來實現這一點。
下面的代碼給了我這樣一個圖:
import numpy as np
import pandas
import matplotlib.pyplot as plt
# fake data
x = np.genfromtxt('/Users/yusufkamilak/Desktop/motionData.csv', delimiter=',', skip_header=10,
skip_footer=0, names=['TimeStamp', 'AccelerationX'])
y = np.genfromtxt('/Users/yusufkamilak/Desktop/heartRate.csv', delimiter=',', skip_header=2,
skip_footer=0, names=['TimeStamp', 'Value'])
# data frames
xdf = pandas.DataFrame(x)
ydf = pandas.DataFrame(y)
# plot x data, get an MPL axes object
ax = xdf.plot()
# plot y data, using the axes already created
ydf.plot(ax=ax)
plt.show()
由於motionData具有超過60,000行的值,heartRate看起來好像從不存在。但是兩個值的時間間隔是相同的。每5-6秒鐘獲取心率,每秒動作數據10次。
任何幫助將不勝感激,我之前詢問過許多問題,但我找不到幫助我解決問題的方法。謝謝!
您還需要一些x軸數據。您的數據框或者已經在列中包含這些數據,或者您需要創建該列。然後'df.plot(x ='TimeStamp',y ='Value')' – ImportanceOfBeingErnest
我被告知應用線性插值來實現將較低頻率的數據擴展到較高頻率的數據並將它們繪製在同一圖形中。我看過numpy的interp函數,但我不明白fp是什麼。順便說一句,如果你把你的答案寫成答案,我可以批准它作爲接受的答案。感謝幫助。 @ImportanceOfBeingErnest –