Skip to content

Commit 95dc050

Browse files
committed
BUG: fix Series.plot label setting
1 parent 36ed4ee commit 95dc050

File tree

3 files changed

+28
-1
lines changed

3 files changed

+28
-1
lines changed

doc/source/whatsnew/v0.17.0.txt

+4
Original file line numberDiff line numberDiff line change
@@ -72,3 +72,7 @@ Bug Fixes
7272

7373

7474
- Bug in ``DatetimeIndex`` and ``TimedeltaIndex`` names are lost after timedelta arithmetics ( :issue:`9926`)
75+
76+
- Bug in `Series.plot(label="LABEL")` not correctly setting the label (:issue:`10119`)
77+
78+

pandas/tests/test_graphics.py

+23
Original file line numberDiff line numberDiff line change
@@ -553,6 +553,29 @@ def test_ts_area_lim(self):
553553
self.assertEqual(xmin, line[0])
554554
self.assertEqual(xmax, line[-1])
555555

556+
def test_label(self):
557+
s = Series([1, 2])
558+
ax = s.plot(label='LABEL', legend=True)
559+
self._check_legend_labels(ax, labels=['LABEL'])
560+
self.plt.close()
561+
ax = s.plot(legend=True)
562+
self._check_legend_labels(ax, labels=['None'])
563+
self.plt.close()
564+
# get name from index
565+
s.name = 'NAME'
566+
ax = s.plot(legend=True)
567+
self._check_legend_labels(ax, labels=['NAME'])
568+
self.plt.close()
569+
# override the default
570+
ax = s.plot(legend=True, label='LABEL')
571+
self._check_legend_labels(ax, labels=['LABEL'])
572+
self.plt.close()
573+
# Add lebel info, but don't draw
574+
ax = s.plot(legend=False, label='LABEL')
575+
self.assertEqual(ax.get_legend(), None) # Hasn't been drawn
576+
ax.legend() # draw it
577+
self._check_legend_labels(ax, labels=['LABEL'])
578+
556579
def test_line_area_nan_series(self):
557580
values = [1, 2, np.nan, 3]
558581
s = Series(values)

pandas/tools/plotting.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -999,7 +999,7 @@ def _compute_plot_data(self):
999999
data = self.data
10001000

10011001
if isinstance(data, Series):
1002-
label = self.kwds.pop('label', None)
1002+
label = self.label
10031003
if label is None and data.name is None:
10041004
label = 'None'
10051005
data = data.to_frame(name=label)

0 commit comments

Comments
 (0)