玩命加载中...
# matplotlib.pyplot基础画图入门
7个小节,预计用时**45分钟**。
matplotlib是目前Python中最强大的图像工具包。而其中的子模块pyplot是最常用的作图模块。
请打开您的电脑,按照步骤一步步完成,45分钟让你从零基础入门pyplot。
本教程基于**Python 2.7**。
原创者:**高代兄**
|
编辑校对:SofaSofa TeamC
|
谢绝转载,违者侵权。
----
### 0. 安装及引用matiplotlib.pyplot
最简单的安装方式是在terminal里输入`pip install matplotlib`。
完整的安装指南请参考[这里](https://matplotlib.org/users/installing.html)。
安装好之后,我们就可以`import matplotlib.pyplot`了。作为约定俗成,我们通常简称这个子模块为`plt`。
```python
import matplotlib.pyplot as plt
```
### 1. plt.plot画线
`plt.plot(x, y)`可以根据x、y轴的坐标画出对应的连线。
`plt.show()`用来显示作出的图线。
```python
plt.plot([1, 2, 3, 4], [1, 2, 5, 4])
plt.show()
```
![png](output_4_0.png)
如果我们只输入一个list,`plt.plot(y)`则默认输入变量表示纵坐标,而横坐标为`range(len(y))`。
```python
plt.plot([0, 1, 2, 4, 8])
plt.show()
```
![png](output_6_0.png)
`plt.plot(x, y)`会安装顺序进行描点,以下为例。第一个被画出的点是(1, 1),第二个点是(5, 2),然后将这两个点连接。再画第三个点(3, 5),然后连接第二个点和第三个点,以此类推。
```python
x = [1, 5, 3, 2, 7, 4]
y = [1, 2, 5, 0, 6, 2]
plt.plot(x, y)
plt.show()
```
![png](output_8_0.png)
如果我们希望是安装横坐标从左向右画出这些点,可以用`zip`函数。示例如下:
```python
xs, ys = zip(*sorted(zip(x, y)))
plt.plot(xs, ys)
plt.show()
```
![png](output_10_0.png)
`plt.plot(x, y)`中的`x`和`y`并不局限于`list`类型变量,也同样适用于`numpy.ndarray`以及`pandas.Series`类型的变量。
```python
import numpy as np
x = np.linspace(-1, 1, 100)
y = x ** 2
plt.plot(x, y)
plt.show()
```
![png](output_12_0.png)
我们也可以在一个图内画多条折线
```python
x1 = np.linspace(-1, 1, 100)
y1 = x1 ** 2
x2 = np.linspace(0, 1, 50)
y2 = x2 ** 0.5
plt.plot(x1, y1)
plt.plot(x2, y2)
plt.show()
```
![png](output_14_0.png)