使用Matplotlib 繪製資料時,常會遇到Y 軸值出現的情況無序的。這可能會在解釋圖表時導致混亂。
當 Y 軸上的資料被視為字串而不是數值時,就會出現問題。 Matplotlib 會自動嘗試按字母順序對字串進行排序,這可能會破壞資料的預期順序。
要解決此問題,請在繪圖之前將 Y 軸資料轉換為數值。這可以透過使用以下步驟來實現:
考慮以下程式碼片段:
<code class="python">import matplotlib.pyplot as plt import numpy as np # Extract Y axis data as strings solar = [line[1] for line in open('PV5sdata1.csv')][1:] # Convert strings to floats solar = [float(data) for data in solar] # Create a NumPy array solar_array = np.array(solar) # Plot using NumPy array plt.plot_date(Time1, solar_array, 'k-')</code>
透過在繪圖前將太陽資料轉換為浮點數,Y 軸值將被視為數值並正確排序。
除了轉換資料時,建議在使用日期或時間時使用 Matplotlib 的 X 軸自動格式化功能。這可以透過旋轉標籤並調整其方向來改善圖表的外觀。
<code class="python">plt.gcf().autofmt_xdate()</code>
以上是當 Matplotlib 中的 Y 軸值最初顯示為無序時,如何對其進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!