繁体   English   中英

Matplotlib放大矩形:跨子图/外轴绘图

[英]Matplotlib zoom-in-rectangle: drawing across subplots/outside axis

有没有一种方法可以创建跨子图或在轴外部绘制的矩形放大? 当前的matplotlib导航放大矩形可让您一次在一个轴内单击并拖动矩形,但是我希望该选项可以将虚线矩形扩展到鼠标所在的位置。

这个想法可以是创建一个新的轴来填充整个图形并使之透明。 然后可以为该轴使用矩形选择器。

在此处输入图片说明

from matplotlib.widgets import RectangleSelector
import numpy as np
import matplotlib.pyplot as plt


fig, axes = plt.subplots(2,2)
for ax in axes.flat:
    ax.scatter(np.random.rand(7), np.random.rand(7), c=np.random.rand(7))

def select(eclick, erelease):
    x1, y1 = eclick.xdata, eclick.ydata
    x2, y2 = erelease.xdata, erelease.ydata
    pass

overax = fig.add_axes([0,0,1,1])
overax.patch.set_alpha(0)
overax.axis("off")

rs = RectangleSelector(overax, select,
                       drawtype='box', useblit=True,
                       button=[1, 3],
                       minspanx=5, minspany=5,
                       spancoords='pixels',
                       interactive=True)

plt.show()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM