簡體   English   中英

如何在matplotlib的折線圖中繪制最大值點?

[英]How do I plot the point of max value on a line graph in matplotlib?

因此我正在運行Python 3.4,並且想知道如何使用matplotlib將最大值繪制為當前線性圖上的一個點。 我當前的圖形非常簡單:它有兩條線,其中y值為得分,而x值為時間。 我試圖在達到最高分的時間在每條線上繪制一個點,並同時顯示其坐標:(最佳時間,最高分)。 有人知道matplotlib是否有辦法嗎? 提前致謝。

我最終要做的是使用兩個圖(time_list是x軸值,score是y值列表):

ordered_time = [time_list for (score,time_list) in sorted(zip(score,time_list))]
best_time = ordered_time[-1]
max_coords = '('+str(best_time)+', ' + str("%.4f" % (max(score)))+')'
max_point = pl.plot(best_time, max(score), 'bo', label="(Opt. Time, Max Score)")
pl.text(best_time, max(score), max_coords)
... (insert rest of stuff for your graph)

這將找到特定線上的最大點,在其上繪制一個點,然后用其坐標標記該點。

如果要使用除坐標以外的其他文本標簽,則只需將最后一行中的“ max_coords”替換為所需的任何字符串。

如果要查找每個行的最大值,則只需具有多個x和y列表並執行相同的過程(例如,使用“ time_list_1”,“ time_list_2”,...和“ score_1“,”得分_2“ ...)

希望這對某人有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM