matplotlib可视化:基础绘图函数使用【函数功能+案例代码】( 二 )


还可以自定义图例的位置:(0 , 0)表示的是图的左下角 , 坐标的数值表示的是比例 。
plt.legend(bbox_to_anchor=(0.3,0.5))
图例的样式也可以调整 , 默认的图例样式是竖排的 。比如我们有两个图例 , 那么我们设置下面这个为2 , 就是默认并排展示 , 而不是并列展示
legend(ncol=2)
2.2.3 axes.plot()绘制图像
plot函数的可选参数主要用于设置线条类型 , 颜色 , 标记 。
颜色标识颜色类型标记符号标记描述线型线型描述
‘b’
蓝色
‘.’
点标记
‘-’
实线
‘g’
绿色
‘o’
圆圈标记
‘–’
虚线
‘r’
红色
‘x’
'X’标记
‘-.’
点划线
‘c’
青色
‘H’
六角标记
‘:’
虚线
‘m’
品红色
‘s’
正方形标记
‘H’
六角标记
‘y’
黄色
‘+’
加号标记
‘k’
黑色
‘D’
钻石标记
‘w’
白色
对于axes类的方法使用 , 示例代码如下:
import matplotlib.pyplot as plt#创建画布fig=plt.figure(dpi=100)#创建axesax=fig.add_axes([0.1,0.1,0.8,0.8])#绘图ax.plot([1,2,3,4],[1,3,6,9],'ro-')ax.plot([1,2,3,4],[2,5,8,12],'bH-.')#设置图例ax.legend(labels=('twitter','weibo'), loc='best')#设置坐标轴ax.set_xlabel("time")ax.set_ylabel("visit")#设置图像标题ax.set_title("compare")#展示图片plt.show()
同时参数可以设置线型 , 可以设置线宽 。

matplotlib可视化:基础绘图函数使用【函数功能+案例代码】

文章插图
在一个画布里面可以拥有多个ax对象 , 示例代码如下:
fig=plt.figure(dpi=100)ax1,ax2=fig.add_axes([0.1,0.1,0.8,0.8]),fig.add_axes([0.58,0.15,0.26,0.26])#绘制第一个图像ax1.plot([1,2,3,4],[3,5,7,10],'bD-')ax1.plot([1,2,3,4],[2,6,8,14],'r+:')ax1.set_xlabel("time")ax1.set_ylabel("count")ax1.set_title("graph-one")ax1.legend(labels=['line1','line2'],loc='best')#绘制第二个图象ax2.plot([1,2,3,4],[3,5,7,10],'rD-')ax2.plot([1,2,3,4],[2,6,8,14],'b+:')ax2.set_xlabel("time")ax2.set_ylabel("count")ax2.set_title("graph-two")ax2.legend(labels=['line1','line2'],loc='best')plt.show()
2.3 绘制子图 2.3.1 ()函数
() 既创建了一个包含子图区域的画布 , 又创建了一个图形对象:
fig , ax = plt.subplots(nrows, ncols)
nrows 与 ncols 表示两个整数参数 , 它们指定子图所占的行数、列数 。返回值是一个元组 , 包括一个图形对象和所有的 axes 对象 。其中 axes 对象的数量等于 nrows * ncols , 且每个 axes 对象均可通过索引值访问(从1开始) 。
示例:
import matplotlib.pyplot as pltimport numpy as npimport math#创建画布和多个子图axesfig,ax=plt.subplots(2,2)fig.figsize=(8,6)#x轴数据x=np.arange(1,10,1)#对多个子图进行绘制ax[0][0].plot(x,np.sin(x))ax[0][0].set_title("y=sin(x)")ax[0][1].plot(x,np.cos(x))ax[0][1].set_title("y=cos(x)")ax[1][0].plot(x,np.log(x))ax[1][0].set_title("y=log(x)")ax[1][1].plot(x,np.exp(x))ax[1][1].set_title("y=exp(x)")#展示图像plt.show()
2.3.2 ()函数