python 读取文件数据,并对比计算
import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl
data = np.loadtxt('Angle_file_dev.txt')#1
data2 = np.loadtxt('Angle_file_414.txt')#1
#print(data)
time_stamp1 = data[:,0]
angle_1 = data[:,1]
time_stamp2 = data2[:,0]
angle_2 = data2[:,1]
error = []
i = 0
while i < 441 :
err = angle_1[i] - angle_2[i]
error.append(err)
i = i +1
#print(error)
plt.plot(time_stamp1, angle_1,color='k',linestyle = ':',label = 'nonlinear',linewidth=1.0) # 连线,按顺序将 pose
plt.plot(time_stamp2, angle_2,color='k',linestyle = '-',label= 'linear',linewidth=1.0) # 连线,按顺序将 angle
plt.legend(loc = 'best',labels = ['angle_bug,angle_stable'])
plt.title("Parking in trialer angle anylize", fontsize=12,weight='bold')
plt.xticks(fontsize=10)
plt.yticks(fontsize=10)
plt.xlabel('time (sec)', fontsize=12)
plt.ylabel('yaw angle(edg)', fontsize=12)
#axs = plt.gca()
#axs.set_aspect(1)
plt.tight_layout()#
plt.savefig('angle_line_error1.png')
#plt.show()
################################
ermax = np.max(error)
cmp = mpl.colors.ListedColormap(['g','y','r'])
norm = mpl.colors.BoundaryNorm([0,0.3,0.5,ermax], cmp.N)
fig, ax = plt.subplots()
sc = ax.scatter(time_stamp1,error,c=error,s=1,cmap=cmp,norm=norm)
plt.title("trialer error anylize", fontsize=12,weight='bold')
plt.xticks(fontsize=10)
plt.yticks(fontsize=10)
plt.xlabel('time (sec)', fontsize=12)
plt.ylabel('yaw error(edg)', fontsize=12)
cbar = plt.colorbar(sc,aspect=50)
cbar.ax.tick_params(labelsize=10)
cbar.set_label('Error resolution colorbar (edg)',fontsize=12)
#axs = plt.gca()
#axs.set_aspect(1)
fig.tight_layout()#
fig.savefig('error_show1.png')
plt.show()
输出如下:
读取两个数据文件,画出对比曲线
import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl
data = np.loadtxt('Angle_file_after.txt')#1
data2 = np.loadtxt('Angle_file_before.txt')#1
print(data)
x = data[:,0]
y = data[:,1]
x2 = data2[:,0]
y2 = data2[:,1]
plt.plot(x, y,color='r',linestyle = '-',label= 'nonlinear',linewidth=1.0) # 连线,按顺序将 angle
plt.plot(x2, y2,color='g',linestyle = ':',label = 'nonlinear',linewidth=1.0) # 连线,按顺序将 pose
plt.legend(loc = 'best',labels = ['trailer_angle_a','trailer_angle_b'])
plt.title("Trialer angle compare", fontsize=12,weight='bold')
plt.xticks(fontsize=10)
plt.yticks(fontsize=10)
plt.xlabel('time (sec)', fontsize=12)
plt.ylabel('yaw angle(edg)', fontsize=12)
#axs = plt.gca()
#axs.set_aspect(1)
plt.tight_layout()#
plt.savefig('angle_compare_line.png')
plt.show()
输出如下: