2017-05-12 17 views
2

私は実験から得たデータから曲線w.r.t時系列をプロットしました。データは10ms間隔で収集されます。データは単列配列です。曲線上のプロットマーカーMatplotlibでXの値がわかっている

また、特定のデバイスがトリガーされる時刻を含む配列も計算されています。私はこれらの誘発された場所のaxvlinesを描きました。

私のカーブがこれらの軸線を横切るマーカーを表示したいと思います。どうしたらいいですか?

トリガーの時間(X-は既知)。曲線は描かれていますが、等式はありません(不規則な実験データ)。トリガー間隔も必ずしも同じではありません。

ありがとうございました。

p.s - 図にも複数の寄生虫軸が使用されています。それは本当に重要なことではなく、ちょうどその場合です。

Want Markers On Curve Where AXVline Crosses

+1

scipyのダウンロードは、補間モジュールを有しています。あなたのx値からy値を見積もるためにそれを使用してください。 –

答えて

2

あなたはデータを補間するnumpy.interp()を使用することができます。

import numpy as np 
import matplotlib.pyplot as plt 

trig = np.array([0.4,1.3,2.1]) 
time = np.linspace(0,3,9) 
signal = np.sin(time)+1.3 

fig, ax = plt.subplots() 
ax.plot(time, signal) 
for x in trig: 
    ax.axvline(x, color="limegreen") 
#interpolate: 
y = np.interp(trig, time, signal) 
ax.plot(trig, y, ls="", marker="*", ms=15, color="crimson") 

plt.show() 

enter image description here

関連する問題