@@ -2068,30 +2068,21 @@ def _release(self, event):
2068
2068
xy2 = self .ax .transData .transform ([x2 , y2 ])
2069
2069
self .eventrelease .x , self .eventrelease .y = xy2
2070
2070
2071
+ # calculate dimensions of box or line
2071
2072
if self .spancoords == 'data' :
2072
- xmin , ymin = self .eventpress .xdata , self .eventpress .ydata
2073
- xmax , ymax = self .eventrelease .xdata , self .eventrelease .ydata
2074
- # calculate dimensions of box or line get values in the right order
2073
+ spanx = abs (self .eventpress .xdata - self .eventrelease .xdata )
2074
+ spany = abs (self .eventpress .ydata - self .eventrelease .ydata )
2075
2075
elif self .spancoords == 'pixels' :
2076
- xmin , ymin = self .eventpress .x , self .eventpress . y
2077
- xmax , ymax = self .eventrelease . x , self .eventrelease .y
2076
+ spanx = abs ( self .eventpress .x - self .eventrelease . x )
2077
+ spany = abs ( self .eventpress . y - self .eventrelease .y )
2078
2078
else :
2079
2079
cbook ._check_in_list (['data' , 'pixels' ],
2080
2080
spancoords = self .spancoords )
2081
-
2082
- if xmin > xmax :
2083
- xmin , xmax = xmax , xmin
2084
- if ymin > ymax :
2085
- ymin , ymax = ymax , ymin
2086
-
2087
- spanx = xmax - xmin
2088
- spany = ymax - ymin
2089
- xproblems = self .minspanx is not None and spanx < self .minspanx
2090
- yproblems = self .minspany is not None and spany < self .minspany
2091
-
2092
2081
# check if drawn distance (if it exists) is not too small in
2093
2082
# either x or y-direction
2094
- if self .drawtype != 'none' and (xproblems or yproblems ):
2083
+ if (self .drawtype != 'none'
2084
+ and (self .minspanx is not None and spanx < self .minspanx
2085
+ or self .minspany is not None and spany < self .minspany )):
2095
2086
for artist in self .artists :
2096
2087
artist .set_visible (False )
2097
2088
self .update ()
0 commit comments