Python:通过鼠标交互获取数据点的对应信息
我在我的研究项目中有一组数据,每个数据点都包含大量相关信息,不可能在一个图形中显示所有数据。我想用这些数据的两个关键参数绘制数据点,当鼠标光标悬停在一个数据点上时,它显示与此数据点相关的所有信息。我想知道是否有任何方法来实现这一点Python:通过鼠标交互获取数据点的对应信息,python,Python,我在我的研究项目中有一组数据,每个数据点都包含大量相关信息,不可能在一个图形中显示所有数据。我想用这些数据的两个关键参数绘制数据点,当鼠标光标悬停在一个数据点上时,它显示与此数据点相关的所有信息。我想知道是否有任何方法来实现这一点 谢谢 您有一个matplotlib示例,它提供了类似于您所要求的内容@root在此处提供了一个基本界面,为控制台提供了输出(通过鼠标单击点): 但我还是建议@Moooeeep举例说明了它的用途: 因此: from matplotlib.pyplot import f
谢谢 您有一个matplotlib示例,它提供了类似于您所要求的内容@root在此处提供了一个基本界面,为控制台提供了输出(通过鼠标单击点): 但我还是建议@Moooeeep举例说明了它的用途: 因此:
from matplotlib.pyplot import figure, show
import numpy as npy
from numpy.random import rand
if 1: # picking on a scatter plot (matplotlib.collections.RegularPolyCollection)
x, y, c, s = rand(4, 100)
def onpick3(event):
ind = event.ind
print 'onpick3 scatter:', ind, npy.take(x, ind), npy.take(y, ind)
fig = figure()
ax1 = fig.add_subplot(111)
col = ax1.scatter(x, y, 100*s, c, picker=True)
#fig.savefig('pscoll.eps')
fig.canvas.mpl_connect('pick_event', onpick3)
show()
import matplotlib.pyplot as plt
from mpldatacursor import datacursor
import random
fig, ax = plt.subplots()
ax.set_title('Click on a dot to display its label')
# Plot a number of random dots
for i in range(1, 1000):
ax.scatter([random.random()], [random.random()], label='$ID: {}$'.format(i))
# Use a DataCursor to interactively display the label for a selected line...
datacursor(formatter='{label}'.format)
plt.show()