python通过文本在一个图中画多条线的实例
废话不多说,直接上代码吧!
importmatplotlib.pyplotasplt importnumpyasnp data1=np.loadtxt('/data_1/SSD/caffe/tools/extra/DSOD300_VOC0712_DSOD300_300x300.log.test') data2=np.loadtxt('/data_1/SSD/caffe/tools/extra/DSOD300_VOC0712_DSOD300_300x300.log.train') plt.title('ResultAnalysis') plt.plot(data1[:,0],data1[:,2],color='skyblue',label='y1') plt.plot(data2[:,0],data2[:,3],color='blue',label='y2') plt.legend() plt.xlabel('x') plt.ylabel('y') plt.show()
结果:
加一些不同形式的线
importmatplotlib.pyplotasplt importnumpyasnp data1=np.loadtxt('/data_1/project_test/teest1.txt') data2=np.loadtxt('/data_1/project_test/teest2.txt') data3=np.loadtxt('/data_1/project_test/teest3.txt') plt.title('ResultAnalysis') plt.plot(data1[:,0],data1[:,1],color='skyblue',label='y1',ls='-.')#ls或linestyle plt.plot(data2[:,0],data2[:,1],color='green',label='y2',ls=':') plt.plot(data3[:,0],data3[:,1],color='red',label='y3',ls='steps') plt.legend() plt.xlabel('x') plt.ylabel('y') plt.show()
加标记
importmatplotlib.pyplotasplt importnumpyasnp data1=np.loadtxt('/data_1/project_test/teest1.txt') data2=np.loadtxt('/data_1/project_test/teest2.txt') data3=np.loadtxt('/data_1/project_test/teest3.txt') plt.title('ResultAnalysis') plt.plot(data1[:,0],data1[:,1],color='skyblue',label='y1',ls='-.',marker='*') plt.plot(data2[:,0],data2[:,1],color='green',label='y2',ls=':',marker='+') plt.plot(data3[:,0],data3[:,1],color='red',label='y3',ls='steps',marker='D') plt.legend() plt.xlabel('x') plt.ylabel('y') plt.show()
总结:
linestyleorls:实线'-',破折线'--',点划线'-.',虚线':'
plt.plot()参数设置
PropertyValueType
alpha控制透明度,0为完全透明,1为不透明
animated[TrueFalse]
antialiasedoraa[TrueFalse]
clip_boxamatplotlib.transform.Bboxinstance
clip_on[TrueFalse]
clip_pathaPathinstanceandaTransforminstance,aPatch
colororc颜色设置
containsthehittestingfunction
dash_capstyle[‘butt'‘round'‘projecting']
dash_joinstyle[‘miter'‘round'‘bevel']
dashessequenceofon/offinkinpoints
data数据(np.arrayxdata,np.arrayydata)
figure画板对象amatplotlib.figure.Figureinstance
label图示
linestyleorls线型风格[‘-'‘–'‘-.'‘:'‘steps'…]
linewidthorlw宽度floatvalueinpoints
lod[TrueFalse]
marker数据点的设置[‘+'‘,'‘.'‘1'‘2'‘3'‘4']
markeredgecolorormecanymatplotlibcolor
markeredgewidthormewfloatvalueinpoints
markerfacecolorormfcanymatplotlibcolor
markersizeormsfloat
markevery[Noneinteger(startind,stride)]
pickerusedininteractivelineselection
pickradiusthelinepickselectionradius
solid_capstyle[‘butt'‘round'‘projecting']
solid_joinstyle[‘miter'‘round'‘bevel']
transformamatplotlib.transforms.Transforminstance
visible[TrueFalse]
xdatanp.array
ydatanp.array
zorderanynumber
补充拓展:python画直线和平面实例
画直线
frommpl_toolkits.axisartist.axislinesimportSubplotZero importmatplotlib.pyplotasplt importnumpyasnp fig=plt.figure(1) ax=SubplotZero(fig,111) fig.add_subplot(ax) fordirectionin["xzero","yzero"]: #addsarrowsattheendsofeachaxis ax.axis[direction].set_axisline_style("-|>") #addsXandY-axisfromtheorigin ax.axis[direction].set_visible(True) fordirectionin["left","right","bottom","top"]: #hidesborders ax.axis[direction].set_visible(False) plt.text(-2,2,r"y=kx+b", horizontalalignment='center',fontsize=20) x=np.linspace(-2,2,100) k=-1 b=0 y=k*x+b ax.plot(x,y) plt.show()
画平面
importmatplotlib.pyplotasplt frommatplotlibimportcm importnumpyasnp fig=plt.figure() ax=fig.gca(projection='3d') #Makedata. X=np.arange(-5,5,0.25) Y=np.arange(-5,5,0.25) X,Y=np.meshgrid(X,Y) a1=2 a2=1 Z=a1*X+a2*Y #Plotthesurface. surf=ax.plot_surface(X,Y,Z,cmap=cm.Blues, linewidth=0,antialiased=False) ax.set_xlabel(r'$x_1$',fontsize=20,color='blue') ax.set_ylabel(r'$x_2$',fontsize=20,color='blue') ax.set_zlabel(r'$x_3$',fontsize=20,color='blue')
以上这篇python通过文本在一个图中画多条线的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。