- 第一回:Matplotlib初相识
- 一、认识matplotlib
- 二、安装matplotlib模块
- 三、一个最简单的绘图例子
- 四、Figure的组成
- 五、两种绘图界面接口
- 何时会用到matplotlib呢?
二、安装matplotlib模块Matplotlib是一个Python 2D绘图库,能够以多种硬拷贝格式和跨平台的交互式环境生成出版物质量的图形,用来绘制各种静态,动态,交互式的图表。
Matplotlib可用于Python脚本,Python和IPython Shell、Jupyter notebook,Web应用程序服务器和各种图形用户界面工具包等。
Matplotlib是Python数据可视化库中的泰斗,它已经成为python中公认的数据可视化工具,我们所熟知的pandas和seaborn的绘图接口其实也是基于matplotlib所作的高级封装。
为了对matplotlib有更好的理解,让我们从一些最基本的概念开始认识它,再逐渐过渡到一些高级技巧中。
# python环境中直接使用pip进行安装 pip install matplotlib三、一个最简单的绘图例子
Matplotlib的图像是画在figure(如windows,jupyter窗体)上的,每一个figure又包含了一个或多个axes(一个可以指定坐标系的子区域)。最简单的创建figure以及axes的方式是通过pyplot.subplots命令,创建axes以后,可以使用Axes.plot绘制最简易的折线图。
# 学习matplotlib的第一个程序 import matplotlib.pyplot as plt import numpy as np fig, ax = plt.subplots() # Create a figure containing a single axes. ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) # Plot some data on the axes. plt.show()
博主是在Pycharm2020环境下运行的
运行成功,绘制图会默认在下方显示
如果想让绘制的图片单独运行出来,在Pycharm中需要进行相应的配置,File》Settings》输入Scien,如下图所示
五、两种绘图界面接口现在我们来深入看一下figure的组成。通过一张figure解剖图,我们可以看到一个完整的matplotlib图像通常会包括以下四个层级,这些层级也被称为容器(container),下一节会详细介绍。在matplotlib的世界中,我们将通过各种命令方法来 *** 纵图像中的每一个部分,从而达到数据可视化的最终效果,一副完整的图像实际上是各类子元素的集合。
- Figure:顶层级,用来容纳所有绘图元素
- Axes:matplotlib宇宙的核心,容纳了大量元素用来构造一幅幅子图,一个figure可以由一个或多个子图组成
- Axis:axes的下属层级,用于处理所有和坐标轴,网格有关的元素
- Tick:axis的下属层级,用来处理所有和刻度有关的元素
两种绘图界面接口
- 显式创建figure和axes,调用对应的绘图方法,也被称为OO模式(object-oriented style【面向对象风格】)
- 依赖pyplot自动创建figure和axes,并使用pyplot函数进行绘图。
OO风格:
# OO风格 import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 1, 100) # Sample data. 简单的数据 产生从start到stop的等差数列,num为元素个数,默认100个 # Note that even in the OO-style, we use `.pyplot.figure` to create the figure. fig, ax = plt.subplots() # Create a figure and an axes. 创建一个figure绘图对象和axes子图 ax.plot(x, x, label='linear') # Plot some data on the axes. 通过plot放置一些数据进axes子图中 ax.plot(x, x**2, label='quadratic') # Plot more data on the axes... ax.plot(x, x**3, label='cubic') # ... and some more. ax.set_xlabel('x label') # Add an x-label to the axes. ax.set_ylabel('y label') # Add a y-label to the axes. ax.set_title("OO Simple Plot") # Add a title to the axes. ax.legend() # Add a legend. ax.legend()作用:在图上标明一个图例,用于说明每条曲线的文字显示 plt.show()
效果图:
pyplot风格:
# pyplot风格 import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 1, 100) # Sample data. plt.plot(x, x, label='linear') # Plot some data on the (implicit) axes. plt.plot(x, x**2, label='quadratic') # etc. plt.plot(x, x**3, label='cubic') plt.xlabel('x label') plt.ylabel('y label') plt.title("Pyplot Simple Plot") plt.legend() plt.show()
效果图:
通常在爬虫领域中,需要将数据进行可视化显示,这时候我们可以通过matplotlib进行对对应的参数进行绘制可视化图,这样可以更为直观性的看出对比。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)