From 78198bebd568b147031cb899939b5ef41614d47b Mon Sep 17 00:00:00 2001 From: Antony Lee Date: Fri, 16 Feb 2018 11:04:52 +0100 Subject: [PATCH] Avoid UnboundLocalError in drag_pan. Axes.drag_pan should probably have been private but it's public and should therefore properly handle unexpected input. --- lib/matplotlib/axes/_base.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/matplotlib/axes/_base.py b/lib/matplotlib/axes/_base.py index 4f9cfbd5b1d4..95e7b8d0df91 100644 --- a/lib/matplotlib/axes/_base.py +++ b/lib/matplotlib/axes/_base.py @@ -4014,7 +4014,7 @@ def format_deltas(key, dx, dy): p = self._pan_start dx = x - p.x dy = y - p.y - if dx == 0 and dy == 0: + if dx == dy == 0: return if button == 1: dx, dy = format_deltas(key, dx, dy) @@ -4035,6 +4035,8 @@ def format_deltas(key, dx, dy): except OverflowError: warnings.warn('Overflow while panning') return + else: + return valid = np.isfinite(result.transformed(p.trans)) points = result.get_points().astype(object)