Matplotlib(時系列データ)で作成されたフィギュアがあり、その上に一連の
matplotlib.pyplot.axvline
行。これらの垂直線の近く(おそらく、線のRHS上および図の上部)に表示されるラベルをプロットに作成します。
次のようなものを使用できます
plt.axvline(10)
plt.text(10.1,0,'blah',rotation=90)
text
のxとyの値を調整して適切に調整する必要がある場合があります。より完全なドキュメント here を見つけることができます。
手動で配置しないソリューションは、「ブレンド変換」を使用することです。
変換 座標をある座標系から別の座標系に変換します。 transform
のtext
パラメーターを使用して変換を指定することにより、テキストのx
およびy
座標を指定できます。軸座標系(それぞれ、x/y軸の左から右/上から下へ0から1になります)。 混合変換 を使用すると、混合座標系を使用できます。
これはまさにあなたが必要とするものです:データによって与えられたx座標があり、テキストを軸に対してどこか、たとえば中央にy軸に配置したいのです。これを行うコードは次のようになります。
import matplotlib.transforms as transforms
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
# the x coords of this transformation are data, and the
# y coord are axes
trans = transforms.blended_transform_factory(
ax.transData, ax.transAxes)
x = 10
ax.axvline(x)
plt.text(x, .5, 'hello', transform=trans)
plt.show()