ズーム ウィンドウ#

この例では、1 つのウィンドウ内のイベント (マウス プレスなど) を別の Figure ウィンドウに接続する方法を示します。

最初のウィンドウで点をクリックすると、2 番目のウィンドウの z と y の制限が調整され、クリックした点の (x, y) 座標が 2 番目のウィンドウのズームの中心になります。

散布図の円の直径はポイント**2 で定義されるため、そのサイズはズームに依存しないことに注意してください。

ノート

この例では、Matplotlib のインタラクティブな機能を実行しますが、これは静的ドキュメントには表示されません。このコードをマシンで実行して、対話性を確認してください。

個々の部分をコピーして貼り付けるか、ページの下部にあるリンクを使用して例全体をダウンロードできます。

  • クリックしてズーム
  • ズームウィンドウ
import matplotlib.pyplot as plt
import numpy as np


# Fixing random state for reproducibility
np.random.seed(19680801)

figsrc, axsrc = plt.subplots(figsize=(3.7, 3.7))
figzoom, axzoom = plt.subplots(figsize=(3.7, 3.7))
axsrc.set(xlim=(0, 1), ylim=(0, 1), autoscale_on=False,
          title='Click to zoom')
axzoom.set(xlim=(0.45, 0.55), ylim=(0.4, 0.6), autoscale_on=False,
           title='Zoom window')

x, y, s, c = np.random.rand(4, 200)
s *= 200

axsrc.scatter(x, y, s, c)
axzoom.scatter(x, y, s, c)


def on_press(event):
    if event.button != 1:
        return
    x, y = event.xdata, event.ydata
    axzoom.set_xlim(x - 0.1, x + 0.1)
    axzoom.set_ylim(y - 0.1, y + 0.1)
    figzoom.canvas.draw()

figsrc.canvas.mpl_connect('button_press_event', on_press)
plt.show()

Sphinx-Gallery によって生成されたギャラリー