条形图的鼠标悬停事件

阿比拉什·雷泽诺夫·苏巴拉曼

我试图使用 matplotlib 制作交互式绘图,我将在其中单击条形图的索引。这样我就可以使用索引访问存储在数组中的一些详细信息并打印出来。我有一个可用于折线图的代码示例。

    if isinstance(event.artist, Line2D):
        thisline = event.artist
        xdata = thisline.get_xdata()
        ydata = thisline.get_ydata()
        ind = event.ind
        print('onpick1 line:', np.column_stack([xdata[ind], ydata[ind]]))

但是,我无法为条形图获得任何此类 ind/index。有什么解决办法吗?

存在的重要性欧内斯特

条形是单独的补丁。您可以从返回的列表中获取补丁的索引。

import numpy as np; np.random.seed(42)
import matplotlib.pyplot as plt

x = np.arange(10)
y = np.random.rand(len(x))
info = list("ABDCEFGHIJ")

bars = plt.bar(x,y, picker=True)

def on_pick(evt):
    ind = bars.index(evt.artist)
    print(ind, info[ind])

plt.gcf().canvas.mpl_connect("pick_event", on_pick)


plt.show()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章