Dalam senario di mana anda mempunyai siri dengan indeks masa tarikh yang ingin anda gambarkan, anda mungkin menghadapi situasi di mana graf memaparkan cap masa termasuk jam, minit dan saat walaupun anda memilih format yang lebih ringkas seperti "yyyy-mm" atau "2016 Mac."
Untuk menangani isu ini dan mencapai pemformatan yang diingini, kami boleh memanfaatkan fungsi disediakan oleh matplotlib. Khususnya, paksi datetime boleh disesuaikan menggunakan pemformat. Pemformat ini membolehkan anda menentukan cara label tanda pada paksi-x harus dipaparkan.
Berikut ialah contoh yang menunjukkan penggunaan pemformat:
<code class="python">import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib.dates as mdates # Sample data with hourly timestamps N = 30 drange = pd.date_range("2014-01", periods=N, freq="H") np.random.seed(365) values = {'values':np.random.randint(1,20,size=N)} df = pd.DataFrame(values, index=drange) # Create a plot with incorrect formatting fig, ax = plt.subplots() ax.plot(df.index, df.values) ax.set_xticks(df.index) # Use formatters to achieve the desired formatting ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%m")) ax.xaxis.set_minor_formatter(mdates.DateFormatter("%Y-%m")) plt.xticks(rotation=90) # Display the updated plot with the desired formatting plt.show()</code>
Dalam contoh ini, kita mula-mula buat sampel DataFrame dengan cap waktu setiap jam. Kami kemudian menggunakan DateFormatter daripada matplotlib.dates untuk menyatakan bahawa label tanda pada paksi-x hendaklah dalam format "%Y-%m", yang mewakili tahun dan bulan sahaja. Akhir sekali, kami memanggil xticks untuk memutarkan label tanda untuk kebolehbacaan yang lebih baik.
Dengan melaksanakan pendekatan ini, anda boleh menyesuaikan format paksi waktu tarikh anda dengan berkesan, memastikan ia sejajar dengan keperluan paparan yang anda inginkan.
Atas ialah kandungan terperinci Bagaimanakah saya boleh memformat paksi datetime dalam matplotlib untuk menunjukkan tahun dan bulan sahaja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!