阅读量

原创教程,严禁转载。引用本文,请署名 Python中文网, http://www.zglg.work


十六、Python 绘图入门

作为绘图模块的第一篇,与大家一起过过最基本的Python绘图原理。

掌握基本的绘图原理很有必要,各个常用绘图库的原理基本都是相通的。所以了解它们后,使用库里的API函数将会更加得心应手,并且熟练其中一个库后,便能迅速上手其他的绘图库。

1 绘图组成要素

一般绘图要素的基本组成部分包括:画布(Canvas),坐标系(Axes),轴(Axis),标题(Title),标签(Label),刻度(Tick),图例(Legend),网格(Grid),数据域(Data),如下图所示:

2 画布

画布 Canvas 是绘制图像的地方,一个画布可以包括多个坐标系,如下图所示,一个Canvas上包括2个坐标系(Axes):

对应在实际绘图中,如下所示,画布上共包括3个坐标系,每个坐标系分别绘制了柱状图、折线图、饼图,布局样式如下:

这种坐标系布局还能做出更加复杂多样美观的样式,即看板,英文 dashboard,实际工作常用在商业智能分析(BI)中,如下是一个dashboard的范例:

3 坐标系

一个坐标系常见的组成部分如下所示:

在实际坐标系中,各个元素的对应关系如下所示:

4 轴

常见的轴划分为: x 轴和 y 轴,当然也有某些类图只有一个轴,如饼图。

另外,一个坐标系中,还可以包括双轴。如下所示,左侧轴表示降水量,右侧轴表示温度,这是双轴图:

很多时候,习惯使用 x 轴表示非数值型,y 轴表示数值,但是现在也常常颠倒过来,让 y 轴表示非数值, x 轴表示数值。如下图所示:

5 其他元素

其他元素如:标题(Title),标签(Label),刻度(Tick),图例(Legend),网格(Grid),这些都比较好理解。

有的绘图库里,一个轴对象,通常包括着标签、刻度、以及网格对象。

6 注意事项

绘图的终极目的是想让数据展现更加更效、美观,方便观众迅速捕捉到数据的大概分布和走势。

注意事项,最重要的一条

1):首先做到准确高效的传达信息,以此为前提下再力求美观。

2)折线图、柱状图等的基线最好要从零开始。

3)尽量使用常见的、可读性强的字体,最好不要使用艺术字。

4)通常来讲,柱状图的间隔应为柱状图宽度的1/2,间距不能过小或过大。

5)饼图的分类要适中,分类数不宜过多,过多分类无法聚焦。

6)一副图中,不同颜色种类不宜过多。


Python 20个专题完整目录:

Python前言

Google Python代码风格指南

Python数字

Python正则之提取正整数和大于0浮点数

Python字符串

CSV读写乱码问题

Unicode标准化

Unicode, UTF-8, ASCII

Python动态生成变量

Python字符串对齐

Python小项目1:文本句子关键词的KWIC显示

Python列表

Python流程控制

Python编程习惯专题

Python函数专题

Python面向对象编程-上篇

Python面向对象编程-下篇

Python十大数据结构使用专题

Python包和模块使用注意事项专题

Python正则使用专题

Python时间专题

Python装饰器专题

Python迭代器使用专题

Python生成器使用专题

Python 绘图入门专题

Matplotlib绘图基础专题

Matplotlib绘图进阶专题

Matplotlib绘图案例

NumPy图解入门