.. _sphx_glr_gallery_ticks_and_spines_date_demo_convert.py: ================= Date Demo Convert ================= .. image:: /gallery/ticks_and_spines/images/sphx_glr_date_demo_convert_001.png :align: center .. code-block:: python import datetime import matplotlib.pyplot as plt from matplotlib.dates import DayLocator, HourLocator, DateFormatter, drange import numpy as np date1 = datetime.datetime(2000, 3, 2) date2 = datetime.datetime(2000, 3, 6) delta = datetime.timedelta(hours=6) dates = drange(date1, date2, delta) y = np.arange(len(dates)) fig, ax = plt.subplots() ax.plot_date(dates, y ** 2) # this is superfluous, since the autoscaler should get it right, but # use date2num and num2date to convert between dates and floats if # you want; both date2num and num2date convert an instance or sequence ax.set_xlim(dates[0], dates[-1]) # The hour locator takes the hour or sequence of hours you want to # tick, not the base multiple ax.xaxis.set_major_locator(DayLocator()) ax.xaxis.set_minor_locator(HourLocator(range(0, 25, 6))) ax.xaxis.set_major_formatter(DateFormatter('%Y-%m-%d')) ax.fmt_xdata = DateFormatter('%Y-%m-%d %H:%M:%S') fig.autofmt_xdate() plt.show() **Total running time of the script:** ( 0 minutes 0.020 seconds) .. only :: html .. container:: sphx-glr-footer .. container:: sphx-glr-download :download:`Download Python source code: date_demo_convert.py ` .. container:: sphx-glr-download :download:`Download Jupyter notebook: date_demo_convert.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_