Matplotlib y축 값이 순서가 지정되지 않음: 해결책
matplotlib에서 데이터를 플롯할 때 y축 값이 순서 없이 나타날 수 있습니다. 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!