matplotlib中常用函数

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

matplotlib中常用函数散点图柱状图等高线matplotlib绘制3D图子图像动态图常见设置一、设置坐标轴1.#x轴和y轴的值域2.plt.xlim((-1,2))3.plt.ylim((-2,3))4.5.#color为线的颜色,linewidth为线宽度,linestyle为样式(-为实线,--为虚线)6.plt.plot(x,y,color='red',linewidth=1.0,linestyle='—')7.8.plt.figure#绘制一个新画布9.plt.figsize#花布尺寸10.11.#x和y轴12.plt.xtick()13.plt.ytick()14.例如:15.plt.xticks(new_ticks)#new_ticks为-2,2分成十一等份16.plt.yticks([-1,0,1,2,3],17.['level2','level2','level3','level4','level5'])二、1.plt.gca#获取当前的坐标轴2.spines['right'].set_color('red’)#右边框为红色3.#分别把x轴与y轴的刻度设置为bottom与left4.xaxis.set_ticks_position('bottom')5.yaxis.set_ticks_position('left’)6.#分别v把bottom和left类型设置为data,交点为(0,0)7.spines['bottom'].set_position(('data',0))8.spines['left'].set_position(('data',0))9.10.11.例如:12.ax=plt.gca()13.ax.spines['right'].set_color(‘red')14.ax.spines['top'].set_color(‘red’)三、15.l1,=plt.plot(x,y1,color='red',linewidth=1.0,linestyle='—')#设置两条线为l1,l2注:应该在后面加上,16.l2,=plt.plot(x,y2,color=blue,linewidth=5.0,linestyle=-)17.plt.legend(handles=[l1,l2],labels=['test1','test2'],loc='best’)#将l1,l2绘制于一张图中,其中名字分别是l1,l2,位置自动取在最佳位置设置备注18.x0=0.519.y0=2*x0+120.#画点21.plt.scatter(x0,y0,s=50,color='blue')22.#画虚线23.plt.plot([x0,x0],[y0,0],'k--',lw=2)#[x0,x0],[y0,0]代表x0,y0点作虚线交于x0,0k--代表颜色的虚线,lw代表宽度24.plt.annotate(r'$2x+1=%s$'%y0,xy=(x0,y0),xytext=(+30,-30),textcoords='offsetpoints',fontsize=16,arrowprops=dict(arrowstyle='-',connectionstyle='arc3,rad=.2'))25.#xy=(x0,y0)指在x0,y0点,xytext=(+30,-30)指在点向右移动30,向下移动30,textcoords='offsetpoints'指以点为起点26.#arrowprops=dict(arrowstyle='-',connectionstyle='arc3,rad=.2')指弧度曲线,.2指弧度27.plt.text(-2,2,r'$This\is\the\text$',fontsize=16,color='red’)#-2,2指从-2,2开始写散点图28.x=np.random.normal(0,1,500)29.y=np.random.normal(0,1,500)30.plt.scatter(x,y,s=50,color='blue',alpha=0.5)#s指点大小,alpha指透明度31.plt.show()柱状图32.x=np.arange(10)33.y=2**x+1034.plt.bar(x,y,facecolor='#9999ff',edgecolor='white')#柱颜色,柱边框颜色35.forx,yinzip(x,y):#zip指把x,y结合为一个整体,一次可以读取一个x和一个y36.plt.text(x,y,'%.2f'%y,ha='center',va='bottom')#指字体在中间和柱最顶的顶部37.plt.show()等高图38.deff(x,y):39.#用来生成高度40.return(1-x/2+x**5+y**3)*np.exp(-x**2-y**2)41.42.x=np.linspace(-3,3,100)43.y=np.linspace(-3,3,100)44.45.X,Y=np.meshgrid(x,y)#将x,y指传入网格中46.plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot)#8指图中的8+1根线,绘制等温线,其中cmap指颜色47.48.C=plt.contour(X,Y,f(X,Y),8,colors='black',linewidth=.5)#colors指等高线颜色49.plt.clabel(C,inline=True,fontsize=10)#inline=True指字体在等高线中50.51.plt.xticks(())52.plt.yticks(())53.plt.show()matplotlib绘制3D图54.frommpl_toolkits.mplot3dimportAxes3D#动态图所需要的包55.fig=plt.figure()56.ax=Axes3D(fig)57.58.x=np.arange(-4,4,0.25)#0.25指-4至4间隔为0.2559.y=np.arange(-4,4,0.25)60.X,Y=np.meshgrid(x,y)#x,y放入网格61.R=np.sqrt(X**2+Y**2)62.Z=np.sin(R)63.64.ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap=plt.get_cmap('rainbow'))#rstride=1指x方向和y方向的色块大小65.ax.contourf(X,Y,Z,zdir='z',offset=-2,cmap='rainbow')#zdir指映射到z方向,-2代表映射到了z=-266.ax.set_zlim(-2,-2)67.68.plt.show()子图像69.plt.figure()70.plt.subplot(2,2,1)#建立一个两行两列的画布,第一个71.plt.plot([0,1],[0,1])72.plt.subplot(2,2,2)#第二个73.plt.plot([0,1],[0,1])74.plt.subplot(2,2,3)#第三个75.plt.plot([0,1],[0,1])76.plt.subplot(2,2,4)#第四个77.plt.plot([0,1],[0,1])78.plt.show()79.plt.figure()80.plt.subplot(2,1,1)#建立一个两行两列的画布,第一个81.plt.plot([0,1],[0,1])82.plt.subplot(2,3,4)#第二个83.plt.plot([0,1],[0,1])84.plt.subplot(2,3,5)#第三个85.plt.plot([0,1],[0,1])86.plt.subplot(2,3,6)#第四个87.plt.plot([0,1],[0,1])88.plt.show()动态图89.frommatplotlibimportanimation#动态图所需要的包90.fig,ax=plt.subplots()#子图像91.x=np.arange(0,2*np.pi,0.01)92.line,=ax.plot(x,np.sin(x))93.94.defanimate(i):95.line.set_ydata(np.sin(x+i/10))#用来改变的y对应的值96.returnline,97.definit():98.line.set_ydata(np.sin(x))#动态图初始图像99.returnline,100.101.ani=animation.FuncAnimation(fig=fig,func=animate,init_func=init,interval=20)#动态作图的方法,func动态图函数,init_func初始化函数,interval指图像改变的时间间隔102.plt.show()注:若想看动态效果请在ipython中使用使用颜色映射颜色映射(colormap)是一系列颜色,它们从起始颜色渐变到结束颜色。在可视化中,颜色映射用于突出数据的规律,例如,你可能用较浅的颜色来显示较小的值,并使用较深的颜色来显示较大的值。1.importmatplotlib.pyplotasplt2.3.x_values=list(range(1001))4.y_values=[x**2forxinx_values]5.6.plt.scatter(x_values,y_values,c=y_values,cmap=plt.cm.Blues,edgecolor='none',s=40)数据分析matlabNumpy+scipy+pandas+matplotlib数据计算+科学应用+数据清洗+数据可视化1Numpy概述基于c语言的python接口的数值算法库开源免费弥补了python语言在数值计算方面的短板作为常用科学计算工具的底层支撑Numpy的性能简化代码编写,提高开发效率通过优化底层实现,提高运行速度基础:数组Numpy中的数组是ndarray类实例化的对象:实例数据:数组的内容元数据:对数组的描述大部分对数组的操作仅仅是对元数据的操作,以此提高执行性能Numpy中的数组必须是同质的,即所有元素的数据类型必须完全相同dtype和shape属性分别表示元素类型和维度实例化np.arange(起始值,终止值,步长)默认起始值0默认步长:1np.array(任何可被解释为数组的序列)类型转换astype(目标类型)-转换后的新数组'U21'表示字符串,其中每个字符都是小端字节序的21位Unicode字符多维数组和元素索引数组的维度表示为一个元组:(高维度数-低维度数)一维数组,6个元素:(6,)二维数组,2行3列:(2,3)三维数组,2页3行4列:(2,3,4)通过下标运算符访问数组中的元素数组[页标][行标][列标]数据类型存储形式,处理方式内置类型布尔型bool_:True/False整型有符号:int8/int16/int32/int64无符号:uint8/uint16/uint32/uin64浮点型:float16/float32/float64复数型:complex64/complex128复合类型有多个相同或不同类型的字段组合而成的类型np.array(..,dytpe=复合类型)类型字符码bool_:?有符号整型:i1/2/4/8无符号整型:u1/2/4/8浮点型:f2/4/8复数型:c8/16字符串:U字符数日期时间:M字节序(针对多字节整型)://=表示小端/大端/硬件切片数组[起始:终止:步长]默认起始:首(正步长)/尾(负步长)默认终止:尾后(正步长)/首前默认步长:1变维视图变维:元数据独立,实际数据共享数组.reshape(新维度)-新数组元素数和维度数必须匹配数组.ravel()-得到的是一维数

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功