我可以在MPLD3中的链接子图中使用工具提示吗?

时间:2016-03-30 15:22:19

标签: mpld3

我在MPLD3中尝试了工具提示示例。但是,在我的图中,我有几个带有链接x轴的子图(数据长度相同,我正在绘制数据帧的不同列)。使用下面的代码,当我在最后一个子图中移动鼠标时,我能够看到工具提示。但是,当我在任何子图中移动鼠标时,我想这样做。我怎样才能做到这一点?我想它应该有点像LinkedBrush的例子。我只是不确定如何编写我的插件来处理各种子图。

以下代码创建一个底部子图上有工具提示的图。

import matplotlib.pyplot as plt
import numpy as np
import mpld3
from mpld3 import plugins, utils
N=30
fig, axes = plt.subplots(3, 1, figsize=(6,10), sharex='col')
for i in range(3):
    points1=axes[i].scatter(range(N),np.random.random(size=N), color='b',marker='.')
labels0 = [ 'point {0}'.format(i + 1) for i in range(N)]
tooltip = plugins.PointLabelTooltip(points1, labels0)
plugins.connect(fig, tooltip)
mpld3.save_html(fig, 'test.html')

1 个答案:

答案 0 :(得分:1)

您可以通过将工具提示创建代码放入循环来实现此目的:

import matplotlib.pyplot as plt
import numpy as np
import mpld3
from mpld3 import plugins, utils
N=30
fig, axes = plt.subplots(3, 1, figsize=(6,10), sharex='col')
for i in range(3):
    points1=axes[i].scatter(range(N),np.random.random(size=N), color='b',marker='.')
    labels0 = [ 'point {0}'.format(i + 1) for i in range(N)]
    tooltip = plugins.PointLabelTooltip(points1, labels0)
    plugins.connect(fig, tooltip)
mpld3.save_html(fig, 'test.html')