Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit b020cd0

Browse files
Skip redundant wrapped text context manager
1 parent 70dc0d1 commit b020cd0

1 file changed

Lines changed: 57 additions & 59 deletions

File tree

lib/matplotlib/text.py

Lines changed: 57 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -850,66 +850,64 @@ def draw(self, renderer):
850850

851851
renderer.open_group('text', self.get_gid())
852852

853-
with self._cm_set(text=self._get_wrapped_text()):
854-
bbox, info, descent = self._get_layout(renderer)
855-
trans = self.get_transform()
853+
bbox, info, descent = self._get_layout(renderer)
854+
trans = self.get_transform()
855+
856+
# don't use self.get_position here, which refers to text
857+
# position in Text:
858+
x, y = self._x, self._y
859+
if np.ma.is_masked(x):
860+
x = np.nan
861+
if np.ma.is_masked(y):
862+
y = np.nan
863+
posx = float(self.convert_xunits(x))
864+
posy = float(self.convert_yunits(y))
865+
posx, posy = trans.transform((posx, posy))
866+
if np.isnan(posx) or np.isnan(posy):
867+
return # don't throw a warning here
868+
if not np.isfinite(posx) or not np.isfinite(posy):
869+
_log.warning("posx and posy should be finite values")
870+
return
871+
canvasw, canvash = renderer.get_canvas_width_height()
856872

857-
# don't use self.get_position here, which refers to text
858-
# position in Text:
859-
x, y = self._x, self._y
860-
if np.ma.is_masked(x):
861-
x = np.nan
862-
if np.ma.is_masked(y):
863-
y = np.nan
864-
posx = float(self.convert_xunits(x))
865-
posy = float(self.convert_yunits(y))
866-
posx, posy = trans.transform((posx, posy))
867-
if np.isnan(posx) or np.isnan(posy):
868-
return # don't throw a warning here
869-
if not np.isfinite(posx) or not np.isfinite(posy):
870-
_log.warning("posx and posy should be finite values")
871-
return
872-
canvasw, canvash = renderer.get_canvas_width_height()
873-
874-
# Update the location and size of the bbox
875-
# (`.patches.FancyBboxPatch`), and draw it.
876-
if self._bbox_patch:
877-
self.update_bbox_position_size(renderer)
878-
self._bbox_patch.draw(renderer)
879-
880-
gc = renderer.new_gc()
881-
gc.set_foreground(self.get_color())
882-
gc.set_alpha(self.get_alpha())
883-
gc.set_url(self._url)
884-
gc.set_antialiased(self._antialiased)
885-
self._set_gc_clip(gc)
886-
887-
angle = self.get_rotation()
888-
889-
for line, wh, x, y in info:
890-
891-
mtext = self if len(info) == 1 else None
892-
x = x + posx
893-
y = y + posy
894-
if renderer.flipy():
895-
y = canvash - y
896-
clean_line, ismath = self._preprocess_math(line)
897-
898-
if self.get_path_effects():
899-
from matplotlib.patheffects import PathEffectRenderer
900-
textrenderer = PathEffectRenderer(
901-
self.get_path_effects(), renderer)
902-
else:
903-
textrenderer = renderer
904-
905-
if self.get_usetex():
906-
textrenderer.draw_tex(gc, x, y, clean_line,
907-
self._fontproperties, angle,
908-
mtext=mtext)
909-
else:
910-
textrenderer.draw_text(gc, x, y, clean_line,
911-
self._fontproperties, angle,
912-
ismath=ismath, mtext=mtext)
873+
# Update the location and size of the bbox
874+
# (`.patches.FancyBboxPatch`), and draw it.
875+
if self._bbox_patch:
876+
self.update_bbox_position_size(renderer)
877+
self._bbox_patch.draw(renderer)
878+
879+
gc = renderer.new_gc()
880+
gc.set_foreground(self.get_color())
881+
gc.set_alpha(self.get_alpha())
882+
gc.set_url(self._url)
883+
gc.set_antialiased(self._antialiased)
884+
self._set_gc_clip(gc)
885+
886+
angle = self.get_rotation()
887+
888+
for line, wh, x, y in info:
889+
890+
mtext = self if len(info) == 1 else None
891+
x = x + posx
892+
y = y + posy
893+
if renderer.flipy():
894+
y = canvash - y
895+
clean_line, ismath = self._preprocess_math(line)
896+
897+
if self.get_path_effects():
898+
from matplotlib.patheffects import PathEffectRenderer
899+
textrenderer = PathEffectRenderer(self.get_path_effects(), renderer)
900+
else:
901+
textrenderer = renderer
902+
903+
if self.get_usetex():
904+
textrenderer.draw_tex(gc, x, y, clean_line,
905+
self._fontproperties, angle,
906+
mtext=mtext)
907+
else:
908+
textrenderer.draw_text(gc, x, y, clean_line,
909+
self._fontproperties, angle,
910+
ismath=ismath, mtext=mtext)
913911

914912
gc.restore()
915913
renderer.close_group('text')

0 commit comments

Comments
 (0)