首頁  >  文章  >  後端開發  >  為什麼我的 Matplotlib Y 軸值無序以及如何修復它?

為什麼我的 Matplotlib Y 軸值無序以及如何修復它?

Linda Hamilton
Linda Hamilton原創
2024-10-24 09:47:02706瀏覽

Why Are My Matplotlib Y-Axis Values Unordered and How to Fix It?

Matplotlib y 軸值未排序:解決方案

在 matplotlib 中,繪製來自CSV 檔案。為了解決這個問題,確保資料作為數值而不是字串處理是至關重要的。

考慮以下代碼:

<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>

透過轉換 y 軸資料(Solar )到浮點數,程式碼正確地將值解釋為數字,從而產生有序的 y 軸。

此外,啟用 x 軸自動格式化 (plt.gcf().autofmt_xdate()) 可以改善情節的佈局和可讀性。這在處理日期/時間資料時特別有用。

以上是為什麼我的 Matplotlib Y 軸值無序以及如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn