Skip to content

Commit 91954bd

Browse files
committed
Finished unit test for timedelta plotting.
1 parent 41ebc85 commit 91954bd

File tree

1 file changed

+40
-7
lines changed

1 file changed

+40
-7
lines changed

pandas/tests/plotting/test_datetimelike.py

+40-7
Original file line numberDiff line numberDiff line change
@@ -1272,16 +1272,49 @@ def test_plot_outofbounds_datetime(self):
12721272
values = [datetime(1677, 1, 1, 12), datetime(1677, 1, 2, 12)]
12731273
self.plt.plot(values)
12741274

1275-
def test_format_timedelta_ticks(self):
1275+
def test_format_timedelta_ticks_narrow(self):
12761276
import matplotlib.pyplot as plt
1277-
rng = timedelta_range('0', periods=3, freq='ns')
1277+
1278+
expected_labels = [
1279+
'00:00:00.00000000{:d}'.format(i)
1280+
for i in range(10)]
1281+
1282+
rng = timedelta_range('0', periods=10, freq='ns')
12781283
df = DataFrame(np.random.randn(len(rng), 3), rng)
1279-
ax = df.plot()
1284+
ax = df.plot(fontsize=2)
1285+
ax.get_figure().canvas.draw()
12801286
plt.gcf().autofmt_xdate()
1281-
xaxis = ax.get_xaxis()
1282-
for l in xaxis.get_ticklabels():
1283-
if len(l.get_text()) > 0:
1284-
self.assertEqual(l.get_rotation(), 30)
1287+
labels = ax.get_xticklabels()
1288+
self.assertEqual(len(labels), len(expected_labels))
1289+
for l, l_expected in zip(labels, expected_labels):
1290+
self.assertEqual(l.get_text(), l_expected)
1291+
self.assertEqual(l.get_rotation(), 30)
1292+
1293+
def test_format_timedelta_ticks_wide(self):
1294+
import matplotlib.pyplot as plt
1295+
1296+
expected_labels = [
1297+
'00:00:00',
1298+
'1 days 03:46:40',
1299+
'2 days 07:33:20',
1300+
'3 days 11:20:00',
1301+
'4 days 15:06:40',
1302+
'5 days 18:53:20',
1303+
'6 days 22:40:00',
1304+
'8 days 02:26:40',
1305+
''
1306+
]
1307+
1308+
rng = timedelta_range('0', periods=10, freq='1 d')
1309+
df = DataFrame(np.random.randn(len(rng), 3), rng)
1310+
ax = df.plot(fontsize=2)
1311+
ax.get_figure().canvas.draw()
1312+
plt.gcf().autofmt_xdate()
1313+
labels = ax.get_xticklabels()
1314+
self.assertEqual(len(labels), len(expected_labels))
1315+
for l, l_expected in zip(labels, expected_labels):
1316+
self.assertEqual(l.get_text(), l_expected)
1317+
self.assertEqual(l.get_rotation(), 30)
12851318

12861319
def test_timedelta_plot(self):
12871320
# test issue #8711

0 commit comments

Comments
 (0)