如何使用Python绘图之matplotlib快速绘图
matplotlib是Python最常用的绘图库,她拥有Matlab的语法、python语言、latex的画图质量(还可以使用内嵌的latex引擎绘制的数学公式)。Matplotlib最早是为了可视化癫痫病人的脑皮层电图相关的信号而研发,因为在函数的设计上参考了MATLAB,所以叫做Matplotlib,首次发表于2007年,在开源和社区的推动下,现在在基于Python的各个科学计算领域都得到了广泛应用。其原作者John D. Hunter博士是一名神经生物学家,2012年不幸因癌症去世,感谢他创建了这样一个伟大的库,造福众多Coder。下面我来为大家演示如何使用matplotlib来快速绘制图形:
工具/原料
python
matplotlib模块
方法/步骤
首先,在进入正题之前,我们先做一些准备工作,如果你已配置好本机的Python环境。使用管理员权限打开命令提示符(win10 Widows + x 在弹出的菜单项中选择 cmd 管理员)。在打海攀开的命令提示符窗口中输入:
pip install maplotlib
按Enter确定后,会自动开始下载,如下所示:
要注意的是,如果没有下载成功可以多尝试几次,直到下载完成。matlpotlib在函数戴王艳设计上对matlab进行参考,所以在进行函数式绘图即快速绘图是,语法与MATLAB进行绘图时大致相同。不过在开发大型应用时并不适用,此时对象化绘图才是最好的解决方案。
我们来看一个例子:
import numpy as np
import matplotlib.pyplot as plt
# 创建画布1
plt.figure(1)
# 创建画布2
plt.figure(2)
# 在画布2中创建子图1(有几个子图便是把画布分成几份)
ax1 = plt.subplot(211)
# 在画布2中创建子图2
ax2 = plt.subplot(212)
#指定绘图区间为[0,10],区间囊巨分为100份(单位为长度为0.1)
x = np.linspace(0, 10, 100)
for i in range(5):
# 选择画布1绘图
plt.figure(1)
plt.plot(x, np.exp(i*x/3))
# 选择画布2的子图1绘图
plt.sca(ax1)
plt.plot(x, np.sin(i*x))
# 选择画布2的子图2绘图
plt.sca(ax2)
plt.plot(x, np.cos(i*x))
#输出已绘制图形
plt.show()
显而易见,函数式绘图的语法与matlab极为相似,由于在代码中已做详细说明,在此不对代码进行说明,有问题可以私信本人,做进一步解答。我们来看一下输出的图形
matplotlib绘图功能十分强大,在此只进行简单介绍,感兴趣的网友可以多查阅一些资料,进行深入了解。如果想了解matlotlib的面向对象绘图,可以查看我之后更新的另一篇经验:
如何使用Python绘图之matplotlib面向对象绘图
注意事项
要确保matplotlib下载成功
你的支持就是对我最大的鼓励,如果感觉本篇经验对你有所帮助,请点击左下方的投票按钮支持,谢谢!