Matplotlib.dates.datestr2num() in Python (original) (raw)
from
datetime
import
datetime
import
matplotlib.pyplot as plt
from
matplotlib.dates
import
(
`` DateFormatter, AutoDateLocator, AutoDateFormatter, datestr2num
)
days
=
[
`` '30/01/2019'
,
`` '31/01/2019'
,
`` '01/02/2019'
,
`` '02/02/2019'
,
`` '03/02/2019'
,
`` '04/02/2019'
]
data1
=
[
2
,
5
,
13
,
6
,
11
,
7
]
data2
=
[
6
,
3
,
10
,
3
,
6
,
5
]
z
=
datestr2num([
`` datetime.strptime(day,
'%d/%m/%Y'
).strftime(
'%m/%d/%Y'
)
`` for
day
in
days
])
r
=
0.25
figure
=
plt.figure(figsize
=
(
8
,
4
))
axes
=
figure.add_subplot(
111
)
axes.bar(z
-
r, data1, width
=
2
*
r,
`` color
=
'g'
, align
=
'center'
,
`` tick_label
=
day)
axes.bar(z
+
r, data2, width
=
2
*
r,
`` color
=
'y'
, align
=
'center'
,
`` tick_label
=
day)
axes.xaxis_date()
axes.xaxis.set_major_locator(
`` AutoDateLocator(minticks
=
3
, interval_multiples
=
False
))
axes.xaxis.set_major_formatter(DateFormatter(
"%d/%m/%y"
))
plt.show()