python - 条形图的鼠标悬停事件
问题描述
我试图使用 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()
推荐阅读
- javascript - 使用 html、javascript 和 css 从表单中为每个用户输入在 div 中制作特定的错误消息
- python - Python线程类实例更改所有实例的变量
- java - 需要 Eclipse IDE 插件开发帮助:重命名 Active Editor、TextEditor 的文件资源
- javascript - Ramda.js 如何用挖掘对象采摘
- json - 将其他列组合为 JSON 而不聚合
- wordpress - 如何在主题文件夹内的多个文件中使用 $wpdb 全局变量?
- javascript - 在 PHP 到 DIV HTML 之间传递变量
- autotools - 如何在 GNU 构建系统中将参数附加到 libtool 生成的编译器命令行的末尾?
- python - CUDA_VISIBLE_DEVICES 上的 nvprof 警告
- reactjs - React app on gh pages showing 404s for static files