diff --git a/lib/matplotlib/image.py b/lib/matplotlib/image.py index c8d6f89a0621..edba79316bb8 100644 --- a/lib/matplotlib/image.py +++ b/lib/matplotlib/image.py @@ -553,9 +553,11 @@ def _make_image(self, A, in_bbox, out_bbox, clip_bbox, magnification=1.0, else: if A.ndim == 2: # _interpolation_stage == 'rgba' self.norm.autoscale_None(A) - A = self.to_rgba(A) - if A.shape[2] == 3: + A = self.to_rgba(A, alpha=self.get_alpha()) + elif A.shape[2] == 3: A = _rgb_to_rgba(A) + if (alpha := self.get_alpha()) is not None: + A[:, :, 3] = self.get_alpha() alpha = self._get_scalar_alpha() output_alpha = _resample( # resample alpha channel self, A[..., 3], out_shape, t, alpha=alpha)