matplotlib官方除了提供了鼠标十字光标的示例,还提供了同一图像内多子图共享光标的示例,其功能主要由widgets模块中的MultiCursor类提供支持。
MultiCursor类与Cursor类参数类似,差异主要在:
Cursor类参数只有一个ax,即需要显示光标的子图;MultiCursor类参数为canvas和axes,其中axes为需要共享光标的子图列表。Cursor类中,光标默认是十字线;MultiCursor类中,光标默认为竖线。
官方示例
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import MultiCursor
t = np.arange(0.0, 2.0, 0.01)
s1 = np.sin(2*np.pi*t)
s2 = np.sin(4*np.pi*t)
fig, (ax1, ax2) = plt.subplots(2, sharex=True)
ax1.plot(t, s1)
ax2.plot(t, s2)
multi = MultiCursor(fig.canvas, (ax1, ax2), color='r', lw=1)
plt.show()

简易修改版
multi = MultiCursor(fig.canvas, (ax1, ax2), color='r', lw=1, horizOn

本文介绍了Matplotlib中MultiCursor类的使用方法,该类用于实现同一图像内多个子图间的共享光标效果。通过示例代码展示了如何创建共享光标的多子图,并详细解释了MultiCursor类与Cursor类之间的区别。

2万+

被折叠的 条评论
为什么被折叠?



