玩命加载中...
# matplotlib.pyplot基础画图入门 7个小节,预计用时**45分钟**。 matplotlib是目前Python中最强大的图像工具包。而其中的子模块pyplot是最常用的作图模块。 请打开您的电脑,按照步骤一步步完成,45分钟让你从零基础入门pyplot。 本教程基于**Python 2.7**。 原创者:**<a href='http://sofasofa.io/user_profile.php?id=1001041'>高代兄</a>** &nbsp;&nbsp;|&nbsp;&nbsp; 编辑校对:SofaSofa TeamC &nbsp;&nbsp;|&nbsp;&nbsp; 谢绝转载,违者侵权。 ---- ### 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) <ul class="pagination"> <li class="active"><a href="#">第1页</a></li> <li><a href="2.php">第2页</a></li> <li><a href="3.php">第3页</a></li> <li><a href="4.php">第4页</a></li> <li><a href="5.php">第5页</a></li> <li><a href="6.php">第6页</a></li> </ul> <ul class="pager"> <!--<li class="previous"><a href="#"><b>&larr; 返回前一页</b></a></li>--> <li class="next"><a href="2.php"><b>进入下一页 &rarr;</b></a></li> </ul>