1. 程式人生 > >[work] matplotlib 畫多個曲線的折線圖

[work] matplotlib 畫多個曲線的折線圖

這裡我利用的是matplotlib.pyplot.plot的工具來繪製折線圖,這裡先給出一個段程式碼和結果圖:

# -*- coding: UTF-8 -*-
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

#這裡匯入你自己的資料
#......
#......
#x_axix,train_pn_dis這些都是長度相同的list()

#開始畫圖
sub_axix = filter(lambda x:x%200 == 0, x_axix)
plt.title('Result Analysis')
plt.plot(x_axix, train_acys, color='green', label='training accuracy')
plt.plot(sub_axix, test_acys, color='red', label='testing accuracy')
plt.plot(x_axix, train_pn_dis,  color='skyblue', label='PN distance')
plt.plot(x_axix, thresholds, color='blue', label='threshold')
plt.legend() # 顯示圖例

plt.xlabel('iteration times')
plt.ylabel('rate')
plt.show()
#python 一個折線圖繪製多個曲線

這裡寫圖片描述
  這裡我談談matplotlib.pyplot.plot()的使用方法,先附上一個官方文件連結,然後我說下可能用到的一些引數,引數可選的內容我就不一一展開了,大家可以去上面那個連線裡查:

  • color:曲線顏色,blue,green,red等等
  • label:圖例,這個引數內容就自定義啦,注意如果寫這個引數一定要加上plt.legend(),之後再plt.show()才有有用!
  • linestyle:曲線風格,’–’,’-.’,’:’等等
  • linewidth:曲線寬度,自定義就可以
  • marker:標記點樣式,’o’,’x’,也就是說這些符號會標示出曲線上具體的“點”,這樣一來就易於觀察曲線上那些地方是支撐點
  • markersize:標記點的大小,自定義就可以

  如果不希望畫到同一張圖, 可以加一句:

plt.cla()

plt.legend()如果要顯示label必須加