1、畫折線圖【一條示例】
import matplotlib.pyplot as plt
import numpy as np
x_axis_data = [1,2,3,4,5,6,7] #x
y_axis_data = [68,69,79,71,80,70,66] #y
plt.plot(x_axis_data, y_axis_data, 'b*--', alpha=0.5, linewidth=1, label='acc')#'bo-'表示藍色實線,數據點實心原點標注
## plot中參數的含義分別是橫軸值,縱軸值,線的形狀('s'方塊,'o'實心圓點,'*'五角星 ...,顏色,透明度,線的寬度和標簽 ,
plt.legend() #顯示上面的label
plt.xlabel('time') #x_label
plt.ylabel('number')#y_label
#plt.ylim(-1,1)#僅設置y軸坐標范圍
plt.show()
運行,得到:
2、畫折線圖帶數據標簽
在畫線代碼之前加入這句代碼:
for x, y in zip(x_axis_data, y_axis_data):
plt.text(x, y+0.3, '%.00f' % y, ha='center', va='bottom', fontsize=7.5)#y_axis_data1加標簽數據
總體代碼如下:
import matplotlib.pyplot as plt
import numpy as np
x_axis_data = [1,2,3,4,5,6,7] #x
y_axis_data = [68,69,79,71,80,70,66] #y
for x, y in zip(x_axis_data, y_axis_data):
plt.text(x, y+0.3, '%.00f' % y, ha='center', va='bottom', fontsize=7.5)#y_axis_data1加標簽數據
plt.plot(x_axis_data, y_axis_data, 'b*--', alpha=0.5, linewidth=1, label='acc')#'bo-'表示藍色實線,數據點實心原點標注
## plot中參數的含義分別是橫軸值,縱軸值,線的形狀('s'方塊,'o'實心圓點,'*'五角星 ...,顏色,透明度,線的寬度和標簽 ,
plt.legend() #顯示上面的label
plt.xlabel('time') #x_label
plt.ylabel('number')#y_label
#plt.ylim(-1,1)#僅設置y軸坐標范圍
plt.show()
3、畫多條折線圖:
import matplotlib.pyplot as plt
import numpy as np
#epoch,acc,loss,val_acc,val_loss
x_axis_data = [1,2,3,4,5,6,7]
y_axis_data1 = [68.72,69.17,69.26,69.63,69.35,70.3,66.8]
y_axis_data2 = [71,73,52,66,74,82,71]
y_axis_data3 = [82,83,82,76,84,92,81]
#畫圖
plt.plot(x_axis_data, y_axis_data1, 'b*--', alpha=0.5, linewidth=1, label='acc')#'
plt.plot(x_axis_data, y_axis_data2, 'rs--', alpha=0.5, linewidth=1, label='acc')
plt.plot(x_axis_data, y_axis_data3, 'go--', alpha=0.5, linewidth=1, label='acc')
plt.legend() #顯示上面的label
plt.xlabel('time')
plt.ylabel('number')#accuracy
#plt.ylim(-1,1)#僅設置y軸坐標范圍
plt.show()
運行,得到:
4、畫多條折線圖分別帶數據標簽:
import matplotlib.pyplot as plt
import numpy as np
#epoch,acc,loss,val_acc,val_loss
x_axis_data = [1,2,3,4,5,6,7]
y_axis_data1 = [68.72,69.17,69.26,69.63,69.35,70.3,66.8]
y_axis_data2 = [71,73,52,66,74,82,71]
y_axis_data3 = [82,83,82,76,84,92,81]
#畫圖
plt.plot(x_axis_data, y_axis_data1, 'b*--', alpha=0.5, linewidth=1, label='acc')#'
plt.plot(x_axis_data, y_axis_data2, 'rs--', alpha=0.5, linewidth=1, label='acc')
plt.plot(x_axis_data, y_axis_data3, 'go--', alpha=0.5, linewidth=1, label='acc')
## 設置數據標簽位置及大小
for a, b in zip(x_axis_data, y_axis_data1):
plt.text(a, b, str(b), ha='center', va='bottom', fontsize=8) # ha='center', va='top'
for a, b1 in zip(x_axis_data, y_axis_data2):
plt.text(a, b1, str(b1), ha='center', va='bottom', fontsize=8)
for a, b2 in zip(x_axis_data, y_axis_data3):
plt.text(a, b2, str(b2), ha='center', va='bottom', fontsize=8)
plt.legend() #顯示上面的label
plt.xlabel('time')
plt.ylabel('number')#accuracy
#plt.ylim(-1,1)#僅設置y軸坐標范圍
plt.show()
運行,得到:
附上形狀,可與顏色搭配:
‘s’ : 方塊狀
‘o’ : 實心圓
‘^’ : 正三角形
‘v’ : 反正三角形
‘+’ : 加好
‘*’ : 星號
‘x’ : x號
‘p’ : 五角星
‘1’ : 三腳架標記
‘2’ : 三腳架標記