Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Nilai Matplotlib Y-Axis Tidak Disusun?

Mengapa Nilai Matplotlib Y-Axis Tidak Disusun?

DDD
Lepaskan: 2024-10-24 11:27:29
asal
430 orang telah melayarinya

Why Are Matplotlib Y-Axis Values Not Ordered?

Mengapakah nilai paksi-y Matplotlib tidak disusun?

Dalam matplotlib, apabila nilai paksi-y anda muncul dalam bentuk yang tidak dijangka, tidak tersusun, kemungkinan besar disebabkan oleh jenis data nilai ini. Selalunya, ia diplot sebagai rentetan dan bukannya nombor.

Untuk membetulkan isu ini, tukar data paksi-y anda kepada terapung dengan menghantarnya secara eksplisit semasa pemahaman senarai:

<code class="python">Solar = [float(line[1]) for line in I020]</code>
Salin selepas log masuk

Melangkaui data penukaran, ia juga dinasihatkan untuk menggunakan keupayaan pemformatan automatik matplotlib untuk paksi-x apabila bekerja dengan tarikh dan masa. Ciri ini melaraskan putaran label dan aspek lain secara automatik untuk meningkatkan kebolehbacaan graf:

<code class="python">plt.gcf().autofmt_xdate()</code>
Salin selepas log masuk

Untuk tujuan ilustrasi, mari kita semak semula kod yang disediakan:

<code class="python">I020 = [line.strip('\n').split(",") for line in open('PV5sdata1.csv')][1:]
Time = [datetime.datetime.strptime(line[0], "%H%M%S%f") for line in I020]
Time1 = [mdates.date2num(line) for line in Time]
Solar = [float(line[1]) for line in I020]

fig, ax = plt.subplots()

ax.set_title('Solar data')
ax.set_xlabel('Time')
ax.set_ylabel('Solar')
ax.plot_date(Time1, Solar, 'k-')

hfmt = mdates.DateFormatter('%H:%M:%S')
ax.xaxis.set_major_formatter(hfmt)
plt.gcf().autofmt_xdate()

plt.show()</code>
Salin selepas log masuk

Dalam kod yang diubah suai ini, kami mengisytiharkan rajah dan paksi sebagai objek berasingan (rajah, kapak). Pendekatan ini menawarkan lebih kawalan dan fleksibiliti apabila menyesuaikan atribut plot.

Graf yang terhasil memaparkan nilai paksi-y tersusun dan pelabelan paksi-x yang dipertingkatkan:

[Imej paksi-y tersusun dan pelabelan paksi-x yang dipertingkatkan]

Atas ialah kandungan terperinci Mengapa Nilai Matplotlib Y-Axis Tidak Disusun?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan