Skip to content

Commit 9b7c902

Browse files
authored
Merge pull request #24556 from leejjoon/fix-axesimage-window-extent
Fix incorrect window_extent of AxesImage
2 parents 5044b59 + 50218d1 commit 9b7c902

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

lib/matplotlib/image.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -935,7 +935,7 @@ def __init__(self, ax,
935935
def get_window_extent(self, renderer=None):
936936
x0, x1, y0, y1 = self._extent
937937
bbox = Bbox.from_extents([x0, y0, x1, y1])
938-
return bbox.transformed(self.axes.transData)
938+
return bbox.transformed(self.get_transform())
939939

940940
def make_image(self, renderer, magnification=1.0, unsampled=False):
941941
# docstring inherited

lib/matplotlib/tests/test_image.py

+14
Original file line numberDiff line numberDiff line change
@@ -589,6 +589,20 @@ def test_get_window_extent_for_AxisImage():
589589

590590
assert_array_equal(im_bbox.get_points(), [[400, 200], [700, 900]])
591591

592+
fig, ax = plt.subplots(figsize=(10, 10), dpi=100)
593+
ax.set_position([0, 0, 1, 1])
594+
ax.set_xlim(1, 2)
595+
ax.set_ylim(0, 1)
596+
im_obj = ax.imshow(
597+
im, extent=[0.4, 0.7, 0.2, 0.9], interpolation='nearest',
598+
transform=ax.transAxes)
599+
600+
fig.canvas.draw()
601+
renderer = fig.canvas.renderer
602+
im_bbox = im_obj.get_window_extent(renderer)
603+
604+
assert_array_equal(im_bbox.get_points(), [[400, 200], [700, 900]])
605+
592606

593607
@image_comparison(['zoom_and_clip_upper_origin.png'],
594608
remove_text=True, style='mpl20')

0 commit comments

Comments
 (0)