Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Memformatkan Paksi Tarikh bagi Graf Matplotlib untuk Memaparkan Tahun dan Bulan Sahaja?

Bagaimana untuk Memformatkan Paksi Tarikh bagi Graf Matplotlib untuk Memaparkan Tahun dan Bulan Sahaja?

Barbara Streisand
Barbara Streisandasal
2024-10-27 00:26:31253semak imbas

How to Format the Datetime Axis of a Matplotlib Graph to Display Year and Month Only?

Menukar Format Paksi Datetime pada Graf Matplotlib

Apabila merancang siri masa dengan indeks masa tarikh, selalunya wajar untuk memformatkan label paksi-x untuk memaparkan tahap perincian tertentu, seperti gabungan tahun-bulan. Ini boleh dicapai dengan menggunakan kelas DateFormatter daripada modul matplotlib.dates.

Masalah:

Seorang pengguna ingin memplot siri yang diindeks mengikut datetime, tetapi graf memaparkan nilai masa hingga ke detik, mengakibatkan label bersepah. Format yang dikehendaki ialah untuk menunjukkan tahun dan bulan sahaja (cth., "2014-01" atau "2016 Mac").

Penyelesaian:

Untuk mencapai pemformatan yang diingini , ikuti langkah berikut:

  1. Import modul yang diperlukan: numpy (np), panda (pd), matplotlib.pyplot (plt) dan matplotlib.dates (mdates).
  2. Cipta sampel DataFrame dengan indeks masa tarikh dan nilai rawak.
  3. Buat angka dan paksi menggunakan plt.subplots().
  4. Plot siri dengan memanggil ax.plot(df.index, df .nilai).
  5. Nyatakan tanda paksi-x menggunakan ax.set_xticks(df.index).
  6. Gunakan DateFormatter untuk menentukan pemformat tanda utama dan kecil. Dalam contoh ini, mdates.DateFormatter("%Y-%m") digunakan untuk memaparkan tarikh dalam format "YYYY-MM".
  7. Putar label tanda paksi-x (pilihan) menggunakan _ = plt .xticks(rotation=90) .

Graf yang terhasil akan memaparkan data siri dengan pemformatan paksi waktu tarikh yang diingini, hanya menunjukkan nilai tahun dan bulan.

Atas ialah kandungan terperinci Bagaimana untuk Memformatkan Paksi Tarikh bagi Graf Matplotlib untuk Memaparkan Tahun dan Bulan Sahaja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn