<>Matplotlib简介


Matplotlib是一个Python
2D绘图库,可以生成各种硬拷贝格式和跨平台的交互式环境的出版物质量数据。Matplotlib可用于Python脚本,Python和IPython
shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包。
具体介绍可参考matplotlib官网 <https://matplotlib.org/>


通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。具体可查看官网Matplotlib中的示例图
<https://matplotlib.org/tutorials/introductory/sample_plots.html>

* 是专门用于开发2D图表(包括3D图表)
* 使用起来及其简单
* 以渐进、交互式方式实现数据可视化
Matplotlib可视化的作用
可视化是在整个数据分析的关键辅助工具,可以清晰的理解数据,从而调整我们的分析方法。

* 能将数据进行可视化,更直观的呈现
* 使数据更加客观、更具说服力
例如下面两个图为数字展示和图形展示:

<>实现一个简单的Matplotlib画图
import matplotlib.pyplot as plt #导入模块,plt约定俗成的命名 plt.figure(figsize=(6,4)) plt.
plot([1,2,3,4],[4,3,9,10]) plt.show()


<>Matplotlib图像结构


容器层:画布,绘图区,坐标轴
Canvas画布,常规的绘图操作不会涉及这个部件
Figure图,可以通过Figure控制图像的大小
Axes绘图区,用来绘制图像的区域,里面有X/Y轴

辅助显示层:

标题,X/Y轴标题,网格,图例等

图像层:

根据数据绘制出来的内容

<>Matplotlib三层结构详解

<>1 容器层

容器层主要由Canvas(画布)、Figure(图形,绘图区)、Axes(轴)

Canvas(画布)底层的系统层,在绘图的过程中充当画板的角色,即放置Figure(绘图区)的工具

Figure是Canvas上方的第一层,也是需要用户来操作的应用层的第一层,在绘图的过程中充当画布的角色。

Axes是应用层的第二层,在绘图的过程中相当于画布上的绘图区的角色。

* Figure:指整个图形(可以通过plt.figure()设置画布的大小和分辨率等)
* Axes(坐标系):数据的绘图区域
* Axis(坐标轴):坐标系中的一条轴,包含大小限制、刻度和刻度标签
特点为:

* 一个figure(画布)可以包含多个axes(坐标系/绘图区),但是一个axes只能属于一个figure。
* 一个axes(坐标系/绘图区)可以包含多个axis(坐标轴),包含两个即为2d坐标系,3个即为3d坐标系

<>2 辅助显示层

辅助显示层为Axes(绘图区)内的除了根据数据绘制出的图像以外的内容,主要包括

* Axes外观(facecolor)
* 边框线(spines)
* 坐标轴(axis)
* 坐标轴名称(axis label)
* 坐标轴刻度(tick)
* 坐标轴刻度标签(tick label)
* 网格线(grid)
* 图例(legend)
* 标题(title)
等内容。
该层的设置可使图像显示更加直观更加容易被用户理解,但又不会对图像产生实质的影响。


<>3 图像层

图像层指Axes内通过

* plot(折线图)
* scatter(散点图)
* bar(柱状图)
* histogram(直方图)
* pie(饼图)
等函数根据数据绘制出的图像。

<>总结:

* Canvas(画板)位于最底层,用户一般接触不到
* Figure(画布)建立在Canvas之上
* Axes(绘图区)建立在Figure之上
* 坐标轴(axis)、图例(legend)等辅助显示层以及图像层都是建立在Axes之上

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信