私はあなたがラベル(ツールチップ、凡例、タイトル、ラベル、...)を表示したい正確にどのようにわからないんだけど、このようなものは、最初のステップであるかもしれない:
import numpy as np
import matplotlib.pylab as pl
pl.close('all')
def line_hover(event):
ax = pl.gca()
for line in ax.get_lines():
if line.contains(event)[0]:
print(line.get_label())
labels = ['line 1','line 2','line 3']
fig = pl.figure()
for i in range(len(labels)):
pl.plot(np.arange(10), np.random.random(10), label=labels[i])
pl.legend(frameon=False)
fig.canvas.mpl_connect('motion_notify_event', line_hover)
pl.show()
基本的には、すべてのマウスの動き(motion_notify_event
)に対して、カーソルが行のいずれかにあるかどうかを確認し、そうであれば(すぐにハック/解決策として)、その行のラベルをコマンドラインに表示します。
ツールチップを使用すると、よりよいアプローチであるかもしれないが、それはバックエンド固有のソリューションを必要としているようだ(例えばhttps://stackoverflow.com/a/4620352/3581217を参照)
あなたはhttp://matplotlib.org/examples/event_handling/legend_pickingを見てみたいことがあります。 htmlとhttp://matplotlib.org/users/event_handling.html – user2699