MEP12 text alignment example #8228

Merged
merged 3 commits into from Mar 8, 2017
@@ -1,22 +1,24 @@
"""
+===================
+Precise text layout
+===================
+
You can precisely layout text in data or axes (0,1) coordinates. This
-example shows you some of the alignment and rotation specifications to
-layout text
+example shows you some of the alignment and rotation specifications for text
+layout.
"""
import matplotlib.pyplot as plt
from matplotlib.lines import Line2D
from matplotlib.patches import Rectangle
-# build a rectangle in axes coords
+# Build a rectangle in axes coords
left, width = .25, .5
bottom, height = .25, .5
right = left + width
top = bottom + height
ax = plt.gca()
-p = plt.Rectangle((left, bottom), width, height,
- fill=False,
- )
+p = plt.Rectangle((left, bottom), width, height, fill=False)
p.set_transform(ax.transAxes)
p.set_clip_on(False)
ax.add_patch(p)
@@ -47,24 +49,24 @@
verticalalignment='top',
transform=ax.transAxes)
-ax.text(left, 0.5*(bottom + top), 'right center',
+ax.text(left, 0.5 * (bottom + top), 'right center',
@thisch

thisch Mar 7, 2017

Contributor

I'm -1 on this and the following changes. Note that PEP8 AFAIK does not recommend to add whitespace before and after this operator.

@thisch

thisch Mar 7, 2017

Contributor

It says 'Use your own judgment;'

@anntzer

anntzer Mar 7, 2017

Contributor

"If operators with different priorities are used, consider adding whitespace around the operators with the lowest priority(ies)."

@thisch

thisch Mar 12, 2017

Contributor

In the above line the operator with the lowest priority is the plus operator around which whitespace is added. PEP8 does not say anything about adding whitespace to all operators independent of their priorities.

horizontalalignment='right',
verticalalignment='center',
rotation='vertical',
transform=ax.transAxes)
-ax.text(left, 0.5*(bottom + top), 'left center',
+ax.text(left, 0.5 * (bottom + top), 'left center',
horizontalalignment='left',
verticalalignment='center',
rotation='vertical',
transform=ax.transAxes)
-ax.text(0.5*(left + right), 0.5*(bottom + top), 'middle',
+ax.text(0.5 * (left + right), 0.5 * (bottom + top), 'middle',
horizontalalignment='center',
verticalalignment='center',
transform=ax.transAxes)
-ax.text(right, 0.5*(bottom + top), 'centered',
+ax.text(right, 0.5 * (bottom + top), 'centered',
horizontalalignment='center',
verticalalignment='center',
rotation='vertical',