8000 Backport PR #25237: Fixed a bug where rcParams settings were being ig… · meeseeksmachine/matplotlib@acfd5b1 · GitHub
[go: up one dir, main page]

Skip to content

Commi 8000 t acfd5b1

Browse files
ayshihmeeseeksmachine
authored andcommitted
Backport PR matplotlib#25237: Fixed a bug where rcParams settings were being ignored for formatting axes labels
1 parent 8099c7d commit acfd5b1

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

lib/matplotlib/axis.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -866,6 +866,11 @@ def clear(self):
866866
- registered callbacks
867867
"""
868868
self.label._reset_visual_defaults()
869+
# The above resets the label formatting using text rcParams,
870+
# so we then update the formatting using axes rcParams
871+
self.label.set_color(mpl.rcParams['axes.labelcolor'])
872+
self.label.set_fontsize(mpl.rcParams['axes.labelsize'])
873+
self.label.set_fontweight(mpl.rcParams['axes.labelweight'])
869874
self.offsetText._reset_visual_defaults()
870875
self.labelpad = mpl.rcParams['axes.labelpad']
871876

lib/matplotlib/tests/test_axes.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8431,3 +8431,15 @@ def test_zorder_and_explicit_rasterization():
84318431
ln, = ax.plot(range(5), rasterized=True, zorder=1)
84328432
with io.BytesIO() as b:
84338433
fig.savefig(b, format='pdf')
8434+
8435+
8436+
@mpl.style.context('default')
8437+
def test_rc_axes_label_formatting():
8438+
mpl.rcParams['axes.labelcolor'] = 'red'
8439+
mpl.rcParams['axes.labelsize'] = 20
8440+
mpl.rcParams['axes.labelweight'] = 'bold'
8441+
8442+
ax = plt.axes()
8443+
assert ax.xaxis.label.get_color() == 'red'
8444+
assert ax.xaxis.label.get_fontsize() == 20
8445+
assert ax.xaxis.label.get_fontweight() == 'bold'

0 commit comments

Comments
 (0)
0