Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit8220f15

Browse files
committed
MNT: Prevent users from erroneously using legend label API on Axis
Closes#27971.For a complete explanation see#27971 (comment)
1 parentfe6389f commit8220f15

File tree

7 files changed

+31
-18
lines changed

7 files changed

+31
-18
lines changed

‎galleries/examples/axes_grid1/parasite_simple.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
host.legend(labelcolor="linecolor")
2222

23-
host.yaxis.get_label().set_color(p1.get_color())
24-
par.yaxis.get_label().set_color(p2.get_color())
23+
host.yaxis.label.set_color(p1.get_color())
24+
par.yaxis.label.set_color(p2.get_color())
2525

2626
plt.show()

‎lib/matplotlib/axes/_base.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -777,8 +777,8 @@ def __repr__(self):
777777
iftitles:
778778
fields+= [f"title={titles}"]
779779
forname,axisinself._axis_map.items():
780-
ifaxis.get_label()andaxis.get_label().get_text():
781-
fields+= [f"{name}label={axis.get_label().get_text()!r}"]
780+
ifaxis.labelandaxis.label.get_text():
781+
fields+= [f"{name}label={axis.label.get_text()!r}"]
782782
returnf"<{self.__class__.__name__}: "+", ".join(fields)+">"
783783

784784
defget_subplotspec(self):
@@ -3517,7 +3517,7 @@ def get_xlabel(self):
35173517
"""
35183518
Get the xlabel text string.
35193519
"""
3520-
label=self.xaxis.get_label()
3520+
label=self.xaxis.label
35213521
returnlabel.get_text()
35223522

35233523
defset_xlabel(self,xlabel,fontdict=None,labelpad=None,*,
@@ -3770,7 +3770,7 @@ def get_ylabel(self):
37703770
"""
37713771
Get the ylabel text string.
37723772
"""
3773-
label=self.yaxis.get_label()
3773+
label=self.yaxis.label
37743774
returnlabel.get_text()
37753775

37763776
defset_ylabel(self,ylabel,fontdict=None,labelpad=None,*,

‎lib/matplotlib/axis.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1421,8 +1421,21 @@ def get_gridlines(self):
14211421
returncbook.silent_list('Line2D gridline',
14221422
[tick.gridlinefortickinticks])
14231423

1424+
defset_label(self,s):
1425+
"""Assigning legend labels is supported. Raises RuntimeError."""
1426+
raiseRuntimeError(
1427+
"A legend label cannot be assigned to an Axis. Did you mean to "
1428+
"set the axis label via set_label_text()?")
1429+
14241430
defget_label(self):
1425-
"""Return the axis label as a Text instance."""
1431+
"""
1432+
Return the axis label as a Text instance.
1433+
1434+
.. admonition:: Discouraged
1435+
1436+
This overrides `.Artist.get_label`, which is for legend labels, with a new
1437+
semantic. It is recommended to use the attribute ``Axis.label`` instead.
1438+
"""
14261439
returnself.label
14271440

14281441
defget_offset_text(self):

‎lib/matplotlib/backends/qt_editor/figureoptions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ def convert_limits(lim, converter):
5454
(None,f"<b>{name.title()}-Axis</b>"),
5555
('Min',axis_limits[name][0]),
5656
('Max',axis_limits[name][1]),
57-
('Label',axis.get_label().get_text()),
57+
('Label',axis.label.get_text()),
5858
('Scale', [axis.get_scale(),
5959
'linear','log','symlog','logit']),
6060
sep,

‎lib/matplotlib/tests/test_axes.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -136,20 +136,20 @@ def test_label_shift():
136136
# Test label re-centering on x-axis
137137
ax.set_xlabel("Test label",loc="left")
138138
ax.set_xlabel("Test label",loc="center")
139-
assertax.xaxis.get_label().get_horizontalalignment()=="center"
139+
assertax.xaxis.label.get_horizontalalignment()=="center"
140140
ax.set_xlabel("Test label",loc="right")
141-
assertax.xaxis.get_label().get_horizontalalignment()=="right"
141+
assertax.xaxis.label.get_horizontalalignment()=="right"
142142
ax.set_xlabel("Test label",loc="center")
143-
assertax.xaxis.get_label().get_horizontalalignment()=="center"
143+
assertax.xaxis.label.get_horizontalalignment()=="center"
144144

145145
# Test label re-centering on y-axis
146146
ax.set_ylabel("Test label",loc="top")
147147
ax.set_ylabel("Test label",loc="center")
148-
assertax.yaxis.get_label().get_horizontalalignment()=="center"
148+
assertax.yaxis.label.get_horizontalalignment()=="center"
149149
ax.set_ylabel("Test label",loc="bottom")
150-
assertax.yaxis.get_label().get_horizontalalignment()=="left"
150+
assertax.yaxis.label.get_horizontalalignment()=="left"
151151
ax.set_ylabel("Test label",loc="center")
152-
assertax.yaxis.get_label().get_horizontalalignment()=="center"
152+
assertax.yaxis.label.get_horizontalalignment()=="center"
153153

154154

155155
@check_figures_equal(extensions=["png"])
@@ -8421,7 +8421,7 @@ def test_ylabel_ha_with_position(ha):
84218421
ax=fig.subplots()
84228422
ax.set_ylabel("test",y=1,ha=ha)
84238423
ax.yaxis.set_label_position("right")
8424-
assertax.yaxis.get_label().get_ha()==ha
8424+
assertax.yaxis.label.get_ha()==ha
84258425

84268426

84278427
deftest_bar_label_location_vertical():

‎lib/mpl_toolkits/axisartist/axis_artist.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -312,13 +312,13 @@ def get_pad(self):
312312

313313
defget_ref_artist(self):
314314
# docstring inherited
315-
returnself._axis.get_label()
315+
returnself._axis.label
316316

317317
defget_text(self):
318318
# docstring inherited
319319
t=super().get_text()
320320
ift=="__from_axes__":
321-
returnself._axis.get_label().get_text()
321+
returnself._axis.label.get_text()
322322
returnself._text
323323

324324
_default_alignments=dict(left=("bottom","center"),

‎lib/mpl_toolkits/mplot3d/axes3d.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1801,7 +1801,7 @@ def get_zlabel(self):
18011801
"""
18021802
Get the z-label text string.
18031803
"""
1804-
label=self.zaxis.get_label()
1804+
label=self.zaxis.label
18051805
returnlabel.get_text()
18061806

18071807
# Axes rectangle characteristics

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp