Python 常用算法

1.按照某一列进行排序

idx = data[:,0].argsort()#按照第一列进行排序,获得排序后的索引

data = data[idx]

2.统计数组每个元素出现的次数

    bins_data=(np.unique(X_suitZ)).shape[0]
    data_fre = (plt.hist(X_suitZ,bins=bins_data)[0])
    data_sort = np.unique(X_suitZ)
    plt.close()

3.获取数组中不重复元素

np.unique(X_suitZ)

4.Plt 画图

#确定画板的大小
plt.figure(figsize=(15,5))
#画直线
plt.plot(X,Y,linestyle='-',color='#a94643',label = 'OK')
plt.plot(X,Y,linestyle='-',color='#314680',label = 'NG')
#散点图
plt.scatter(X,Y,marker='.',color='#a94643',label = 'OK')
plt.scatter(X,Y,marker='+',color='#314680',label = 'NG')
plt.scatter(X,Y,marker='*',color='#4E9595',label = 'OK')
plt.scatter(X,Y,marker='x',color='#dd9b4b',label = 'NG')

ax[0].axhline(y=0, ls='--', c='#921100') #红
ax[1].axhline(y=0, ls='--', c='#3E4A7B') #蓝
ax[2].axhline(y=0, ls='--', c='#4E9595') #绿
ax[3].axhline(y=0, ls='--', c='#dd9b4b') #黄

#平行X轴的直线
plt.axhline(y=135, ls='--', c='#921100',) 
#X Y 坐标轴加注释
plt.xlabel('X coordinate', fontsize = 17)
plt.ylabel('Z coordinate', fontsize = 17)
#X Y Z设置坐标轴的显示范围
my_x_ticks = np.arange(0.0, 1.1, 0.2)
my_y_ticks = np.arange(0, 0.41, 0.1)
my_z_ticks = np.arange(0, 0.41, 0.1)
ax.set_xticks(my_x_ticks)
ax.set_yticks(my_y_ticks)
ax.set_zticks(my_z_ticks)
#修改坐标轴刻度的大小
plt.tick_params(labelsize=17) 
#图例的字体大小
plt.legend(prop = {'size':17})
#plt.savefig('C:/Users/legion/Desktop/3DMVS_point/1.Research_Img/Defect/Broken_wire/err_mean.pdf')
plt.show()

你可能感兴趣的:(Python学习,python)