文章目录
使用Jupyter Notebook编写/运行代码。
1.matplotlib简介
matplotlib是建立在NumPy数组基础上的多平台数据可视化程序库。
其重要特性之一是:具有良好的操作系统兼容性和图形显示底层接口兼容性。
2.导入Matplotlib
numpy(numeric python)可以简写成np;
panda(pannel data)可以简写成pd;
在导入Matplotlib时,我们也可以采用简写:
import matplotlib as mpl
import matplotlib.pyplot as plt
3.绘图样式设置
plt.style可以设置图形的绘图风格。
plt.style.use('classic')
这里使用默认的绘图风格。
4.什么时候用show()?
plt.show()方法用来展示图形。具体使用和开发环境有关:
- 脚本
- IPython shell
- IPython Notebook
4.1脚本中画图
# xx.py
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))
plt.show()
在脚本中必须使用plt.show()来展示图形。一个python会话通常只能使用一次plt.show(),多个plt.show()可能会导致显示异常,所以通常把它放在脚本的最后。
plt.show()做了很多事情,它会启动一个事件循环,找到所有可用的图形对象,然后和操作系统的图形显示接口进行交互,打开一个或多个交互式窗口来显示图形。
4.2在Ipython shell中画图
%matplotlib
import matplotlib.pyplot as plt
启动IPython后使用%matplotlib魔法命令即可,此后任何plt命令都会自动打开一个图形窗口,不需要使用plt.show()。
4.3在IPython Notebook中画图
IPython Notebook是基于浏览器的交互式数据分析工具,可以集成描述性文字、代码、图形、HTML元素以及更多的媒体形式到单个Notebook文档中。
无需使用plt.show()方法,只要使用以下两种魔术方法之一即可:
- %matplotlib notebook 在notebook中启动交互式图形
- %matplotlib inline 在notebook中启动静态图形
import numpy as np
x = np.linspace(0, 10, 100)
fig = plt.figure()
plt.plot(x, np.sin(x), '-')
plt.plot(x, np.cos(x), '--')
图1.基本图形
运行命令后,会直接把生成的PNG格式的图形文件嵌入到Notebook的单元格里。
5.保存图形
fig.savefig('myfig.png')
savefig()命令可以把图形保存成文件。保存的图形文件格式就是文件的扩展名,比如PNG。
到底支持哪些图形格式由操作系统的图形显示接口决定:
fig.canvas.get_supported_filetypes()
# 具体支持的文件格式
{'ps': 'Postscript',
'eps': 'Encapsulated Postscript',
'pdf': 'Portable Document Format',
'pgf': 'PGF code for LaTeX',
'png': 'Portable Network Graphics',
'raw': 'Raw RGBA bitmap',
'rgba': 'Raw RGBA bitmap',
'svg': 'Scalable Vector Graphics',
'svgz': 'Scalable Vector Graphics',
'jpg': 'Joint Photographic Experts Group',
'jpeg': 'Joint Photographic Experts Group',
'tif': 'Tagged Image File Format',
'tiff': 'Tagged Image File Format'}
查看之前保存的’myfig.png’文件:
from IPython.display import Image
Image('myfig.png')
图2.刚刚保存的图形