今天小编就为大家分享一篇关于Python编程深度学习绘图库之matplotlib,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

matplotlib是python的一个开源的2D绘图库,它的原作者是John D. Hunter,因为在设计上借鉴了matlab,所以成为matplotlib。和Pillow一样是被广泛使用的绘图功能,而在深度学习相关的部分,matplotlib得宠的多。这篇文章将简单介绍一下如何安装以及使用它来画一些非常常见的统计图形。

概要信息

注意事项:由于Python2支持到2020年,很多python库都开始主要支持python3了,matplotlib的主分支也已经是python3了。而这篇文章中为了简单,安装和demo代码依然是在python2.7上进行验证的。

安装

使用pip install即可直接安装。安装日志如下:

liumiaocn:tmp liumiao$ python -mpip install -U pip
Requirement already up-to-date: pip in /usr/local/lib/python2.7/site-packages (10.0.1)
liumiaocn:tmp liumiao$ 
liumiaocn:tmp liumiao$ python -mpip install -U matplotlib
Collecting matplotlib
 Downloading https://files.pythonhosted.org/packages/61/38/d70e8bf77d5cb27d5f3595edd0b3978825063feadd023786d2591e393e6e/matplotlib-2.2.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (13.7MB)
  100% |████████████████████████████████| 13.7MB 2.1MB/s 
Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib)
 Downloading https://files.pythonhosted.org/packages/6a/8a/718fd7d3458f9fab8e67186b00abdd345b639976bc7fb3ae722e1b026a50/pyparsing-2.2.0-py2.py3-none-any.whl (56kB)
  100% |████████████████████████████████| 61kB 5.8MB/s 
Collecting backports.functools-lru-cache (from matplotlib)
 Downloading https://files.pythonhosted.org/packages/03/8e/2424c0e65c4a066e28f539364deee49b6451f8fcd4f718fefa50cc3dcf48/backports.functools_lru_cache-1.5-py2.py3-none-any.whl
Collecting subprocess32 (from matplotlib)
 Downloading https://files.pythonhosted.org/packages/fa/60/b50459f291cae6bc1d0ff711b75e5130684fd3949370fdba78f6c57c1903/subprocess32-3.5.2-cp27-cp27m-macosx_10_6_intel.whl
Collecting pytz (from matplotlib)
 Downloading https://files.pythonhosted.org/packages/dc/83/15f7833b70d3e067ca91467ca245bae0f6fe56ddc7451aa0dc5606b120f2/pytz-2018.4-py2.py3-none-any.whl (510kB)
  100% |████████████████████████████████| 512kB 8.9MB/s 
Requirement not upgraded as not directly required: six>=1.10 in /usr/local/lib/python2.7/site-packages (from matplotlib) (1.11.0)
Collecting python-dateutil>=2.1 (from matplotlib)
 Downloading https://files.pythonhosted.org/packages/cf/f5/af2b09c957ace60dcfac112b669c45c8c97e32f94aa8b56da4c6d1682825/python_dateutil-2.7.3-py2.py3-none-any.whl (211kB)
  100% |████████████████████████████████| 215kB 7.2MB/s 
Collecting kiwisolver>=1.0.1 (from matplotlib)
 Downloading https://files.pythonhosted.org/packages/79/d8/94633718f3f77dcb638687a77ba199325a1cb158d2d4b00c9dc17f2b5c72/kiwisolver-1.0.1-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (110kB)
  100% |████████████████████████████████| 112kB 5.9MB/s 
Collecting cycler>=0.10 (from matplotlib)
 Downloading https://files.pythonhosted.org/packages/f7/d2/e07d3ebb2bd7af696440ce7e754c59dd546ffe1bbe732c8ab68b9c834e61/cycler-0.10.0-py2.py3-none-any.whl
Requirement not upgraded as not directly required: numpy>=1.7.1 in /usr/local/lib/python2.7/site-packages (from matplotlib) (1.14.5)
Requirement not upgraded as not directly required: setuptools in /usr/local/lib/python2.7/site-packages (from kiwisolver>=1.0.1->matplotlib) (39.2.0)
Installing collected packages: pyparsing, backports.functools-lru-cache, subprocess32, pytz, python-dateutil, kiwisolver, cycler, matplotlib
Successfully installed backports.functools-lru-cache-1.5 cycler-0.10.0 kiwisolver-1.0.1 matplotlib-2.2.2 pyparsing-2.2.0 python-dateutil-2.7.3 pytz-2018.4 subprocess32-3.5.2
liumiaocn:tmp liumiao$

确认

liumiaocn:~ liumiao$ pip show matplotlib
Name: matplotlib
Version: 2.2.2
Summary: Python plotting package
Home-page: http://matplotlib.org
Author: John D. Hunter, Michael Droettboom
Author-email: [email protected]
License: BSD
Location: /usr/local/lib/python2.7/site-packages
Requires: pyparsing, backports.functools-lru-cache, subprocess32, pytz, six, python-dateutil, kiwisolver, cycler, numpy
Required-by: 
liumiaocn:~ liumiao$

使用

正弦函数

我们使用numpy和matplotlib可以非常简单地就能够画出正弦的波形图,具体代码如下:

liumiaocn:plot liumiao$ cat plot-1.py 
#!/usr/local/bin/python
import numpy as np
import matplotlib.pyplot as plot
print("y=sin(x): x with range fo -4pi to 4pi")
x=np.arange(-4*np.pi, 4*np.pi, 0.1)
y=np.sin(x)
#print sin
plot.plot(x,y)
plot.show()
liumiaocn:plot liumiao$

执行&结果确认

liumiaocn:plot liumiao$ python plot-1.py 
y=sin(x): x with range fo -4pi to 4pi

直方图

最简单的直方图的做法,可以通过bar或者hist来创建

liumiaocn:plot liumiao$ cat plot-2.py 
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(7)
y = (10,15,24,7,14,30,20)
plt.bar(x,y)
plt.show()
liumiaocn:plot liumiao$

饼图

使用pie函数创建饼图

liumiaocn:plot liumiao$ cat plot-3.py 
#!/usr/local/bin/python
import matplotlib.pyplot as plt
dateinf = '06/01', '06/02', '06/03', '06/04', '06/05', '06/06', '06/07'
bugnums = [11,22,7,29,24,15,18]
plt.pie(bugnums, labels=dateinf)
plt.show()
liumiaocn:plot liumiao$

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对爱安网的支持。如果你想了解更多相关内容请查看下面相关链接

    无相关信息
最新资讯
马云公益基金会捐赠一亿元用于支持冠状病毒疫苗研发

马云公益基金会捐赠一

马云公益基金会今天宣布,捐赠一亿元人民币用于支持冠状
助力抗击疫情!网易追加捐赠1亿元 设专项防控基金

助力抗击疫情!网易追加

网易公司宣布追加捐赠1亿元人民币,设立新型冠状病毒疫
抗击疫情 盛趣游戏母公司世纪华通捐款1000万元

抗击疫情 盛趣游戏母

为支持当前坚守在疫情一线的医护及其他工作者,世纪华通
富士康:疫情不会影响苹果订单的完成 已有后备方案

富士康:疫情不会影响苹

富士康周二表示,可以确认我们已经采取措施确保我们能够
浙大联合拼多多共同设立防控基金 规模达1亿元

浙大联合拼多多共同设

浙江大学宣布,联合上海寻梦信息技术有限公司成立浙江大
联想将继续驰援武汉雷神山医院所有IT设备

联想将继续驰援武汉雷

联想集团还将向正在兴建的武汉市第二所抗击肺炎应急医
最新文章
使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件

使用PyInstaller将Pyg

这篇文章主要介绍了使用PyInstaller将Pygame库编写的
Python数学形态学实例分析

Python数学形态学实例

这篇文章主要介绍了Python数学形态学,结合实例形式分
Python scipy的二维图像卷积运算与图像模糊处理操作示例

Python scipy的二维图

这篇文章主要介绍了Python scipy的二维图像卷积运算与
python自动发微信监控报警

python自动发微信监控

这篇文章主要为大家详细介绍了python自动发微信监控报
修改 CentOS 6.x 上默认Python的方法

修改 CentOS 6.x 上默

这篇文章主要介绍了修改 CentOS 6.x 上默认Python的方
Python使用Slider组件实现调整曲线参数功能示例

Python使用Slider组件

这篇文章主要介绍了Python使用Slider组件实现调整曲线