概述
按照模块
可以直接本地pip安装也可以使用setting安装,这里我们就本地安装一下:
pip install matplotlib
写一段小程序
import matplotlib.pylab as plt
x = [1,2,3,4,5]
y = [6,7,8,9,0]
plt.plot(x,y) #x是x轴,y是y轴
plt.show()
运行结果:
就是这个样子,且我看一步一步分析:
第一行代码导入模块并且用as重命名
第二行与第三行代码表示在x轴的位置与y轴位置
第四行代码表示依据x与y的列表里的数字一一对应在数轴上
第五行代码就是将第四行所画的图显示出来,之后就不写这个,每个页面有一个就可以运行了。
之后就得到了上面那张图。
在Jupyter中绘图
Jupyter是一种交互操作的模式,需要执行启用matplotlib的操作,使用魔法命令:%matplotlib,之后就可以使用交互模式了。
z = np.linspace(0,2*np.pi,100)
z1 = np.sin(z)
plt.plot(z,z1)
plt.show()
不要关闭窗口,将激活窗口切换到交互模式在输入
z3 = np.cos(z)
plt.plot(z,z3)
面向对象绘图
在Matplotlib中所绘制的所有对象都是Artist对象,它能绘制的对象有两类,一类是基本元素(primitives)类,比如Text,Lin2D,Rectangle等;另一类是容器(container) 类,比如Figure,Axes,Axis等,这种对象可以包含Artist对象的所有类型。
一般的绘图都是首先准备一个画布就是我们的Figure对象。
fig = plt.figure()
plt.show()
这样我们就创建了一个空的画布,可以查看一下这个函数的帮助文档:
Figure(figsize=None, dpi=None, facecolor=None, edgecolor=None, linewidth=0.0, frameon=None, subplotpars=None, tight_layout=None, constrained_layout=None)
这个时候切换到交互模式,画布不要关闭输入:
ax = fig.add_axes([0.1,0.2,0.8,0.8])
执行fig.add_axes()方法的结果就是在画布上创建一个Axes对象,也是一个Artist的对象,与Figure对象差不多,都是容器,所以Axes也可以包含其他东西。
继续调用ax所引用的Axes对象的方法。
a = np.linspace(0,2*np.pi,100)
ax.plot(a,np.sin(a))
以上plot()是Axes对象的方法之一,可以根据数据在Axes对象上面画图。
还可以调用fig对象的一个,可以实现将可视化的内容保存下来:
fig.savefig('1.png')
这里绘图的方法除了Matplotlib以外还有MATLAB风格的绘图方式,如下:
z = np.linspace(0,2*np.pi,100)
plt.figure()
plt.plot(z,np.sin(z))
如果中间没有plt.figure()的话就会执行plt.plot()的时候默认创建一个画布的。
通过两个进行比较可以发现,MATLAB就是通过plt操作各种绘图相关的方法与属性,而面向对象就是通过对象来使用那些方法与属性。
最后
以上就是端庄星月为你收集整理的第十八篇,数据分析之数据可视化之Matplotlib基础按照模块的全部内容,希望文章能够帮你解决第十八篇,数据分析之数据可视化之Matplotlib基础按照模块所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复