Nilai Axis Matplotlib y Tidak Disusun: Penyelesaian
Dalam matplotlib, nilai paksi-y mungkin kelihatan tidak tertib apabila memplot data daripada fail CSV. Untuk menangani perkara ini, adalah penting untuk memastikan bahawa data dikendalikan sebagai nilai berangka dan bukannya rentetan.
Pertimbangkan kod berikut:
<code class="python">I020 = [ line.strip('\n').split(",") for line in open(r'D:\Users\a0476\Anaconda3\TickData\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 = [ line[1] for line in I020 ] # Convert y-axis data to floats Solar = [float(line[1]) for line in I020] xs = np.array(Time1) ys = np.array(Solar) fig, ax = plt.subplots() # using matplotlib's Object Oriented API ax.set_title('Solar data') ax.set_xlabel('Time') ax.set_ylabel('Solar') ax.plot_date(xs, ys, 'k-') hfmt = mdates.DateFormatter('%H:%M:%S') ax.xaxis.set_major_formatter(hfmt) plt.gcf().autofmt_xdate() plt.show()</code>
Dengan menghantar data paksi-y (Solar ) untuk terapung, kod tersebut mentafsirkan nilai sebagai berangka dengan betul, membawa kepada paksi-y tersusun.
Selain itu, mendayakan pemformatan automatik paksi-x (plt.gcf().autofmt_xdate()) bertambah baik susun atur dan kebolehbacaan plot. Ini amat berfaedah apabila berurusan dengan data tarikh/masa.
Atas ialah kandungan terperinci Mengapa Nilai Matplotlib Y-Axis Saya Tidak Tertib dan Bagaimana untuk Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!