一文搞定 Matplotlib 各个示例
摘要:Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用 ,Matplotlib 也是深度学习的常用绘图库,主要是将训练的成果进行图形化,因为这样更直观,更方便发现训练中的问题。
本文分享自华为云社区《深度学习基础之matplotlib,一文搞定各个示例,建议收藏以后参考丨【百变AI秀】》,作者:香菜聊游戏。
Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用 ,Matplotlib 也是深度学习的常用绘图库,主要是将训练的成果进行图形化,因为这样更直观,更方便发现训练中的问题,今天来学习下,走起!!
1、先来个 demo 分析下
下面是一个典型的图形,我们如果想华这样一个图,应该做什么,应该准备哪些数据,这样的图形有哪些属性是你需要关注的?
1、怎么做一个图?怎么创建一个画板?
2、怎么设置数据?x,y 的数据怎么放上去
3、设置图标示,左上角的各种线的颜色这种小窗体怎么画上去?
4、外观,不同线的颜色不同怎么处理?
5、怎么显示?
6、怎么保存?
这么多的问题,怎么搞?一步一步来,先给你看看代码,看下能明白多少
2、matplotlib 中的概念
下面这张图是官网的一张图,指明了很多概念,基本上常用的我们都能看到,看起来大部分也都能理解
Figure(容器)
整个图像称为 Figure, Figure 用于保存返回的 Axes(坐标域), 一个 Figure 可以包含任意数量的 Axes,可以理解为一个容器。
Axes(坐标域)
可以将它理解为一个单个画板,一个 Axes 包含两个 Axis(坐标轴)(在 3D 图中为三个 Axis), 每个 Axes 都有 一个 title(方法:set_title()), 一个 x-label(方法:set_xlabel()), 一个 y-label(方法:set_ylabel()).注意:一个给出的 Axes 对象只能包含在一个 Figure 中。
Axis(坐标轴)
这是一种类似数轴的对象。可以通过 Axis 以及 Axis 的方法设置坐标轴上刻度的样式和坐标轴上的值。刻度的位置由 Locater 对象决定, 刻度对应的值由 Formatter 对象决定。
总结:Axes 差不多就是我们脑中所想的一个‘plot’。可以说就是单张纸。一个确定的 figure 当中可以有很多个 Axes,但是一个确定的 Axes 只能在一个 figure 当中。
2 维空间的 Axes 包含两个 Axis(即 x 轴与 y 轴),3 维空间的 Axes 包含三个 Axis(即 x 轴,y 轴和 z 轴)。这里注意区别 Axes 和 Axis 的概念。
Axis 是一个数轴对象,它主要用于设置一个 Axes 里面的数据约束(即两个端点的值)和轴上的 ticks(就是轴上的标记刻度)和 tick-labels 刻度的标签。
Subplot:子图,figure 对象下创建一个或多个 subplot 对象(即 axes)用于绘制图像。
axes: 设置坐标轴边界和表面的颜色、坐标刻度值大小和网格的显示
figure: 控制 dpi、边界颜色、图形大小、和子区(subplot)设置
font: 字体集(font family)、字体大小和样式设置 grid: 设置网格颜色和线性
legend: 设置图例和其中的文本的显示 line: 设置线条(颜色、线型、宽度等)和标记
patch: 是填充 2D 空间的图形对象,如多边形和圆。控制线宽、颜色和抗锯齿设置等。
savefig: 可以对保存的图形进行单独设置。例如,设置渲染的文件的背景为白色。
verbose: 设置 matplotlib 在执行期间信息输出,如 silent、helpful、debug 和 debug-annoying。
xticks 和 yticks: 为 x,y 轴的主刻度和次刻度设置颜色、大小、方向,以及标签大小。
3、matplotlib 支持的图形
3.1 线图 line
3.2 直方图 hist
3.3 路线
3.4 散点图 Scatter
3.5 极坐标图 Polar plots
3.6 饼图 pie
3.7 3d 图形
总结
上面大部分的数据是总结自官方网站,
如果上面有说的不准确的可以参考官方网站,还不能完全掌握,我也只能画画简单的图,能满足日常的需求罢了
版权声明: 本文为 InfoQ 作者【华为云开发者社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/9972b2d13a7b11d65a09496c6】。文章转载请联系作者。
评论