专题第18篇:Python 绘图入门

纵饮孤独 提交于 2021-01-14 03:02:13

我的施工之路


1 我的施工计划
2 数字专题
3 字符串专题
4 列表专题
5 流程控制专题
6 编程风格专题
7 函数使用
8 面向对象编程(上篇)
9 面向对象编程(下篇)
10 十大数据结构
11 包和模块使用总结
12 Python正则专题总结
13 设计模式
14 Python时间模块总结
15  Python 装饰器
16  Python 迭代器
17  Python 生成器

Python 绘图入门

这是施工系列第18篇,同时也进入到一个新的阶段: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),这些都比较好理解。

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

图例和数据域是紧密相关的,一个系列对应图例的一个部分,如3个系列在图例中就有3个不同取值,并使用不同颜色加以区分。如下图所示,图例包括3个不同取值,每个取值对应一个颜色,每个颜色代表一个系列:


6 注意事项

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

注意事项,最重要的一条 1):首先做到准确高效的传达信息,以此为前提下再力求美观。

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

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

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

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

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

还有一些其他重要细节,大家不妨留言补充或感兴趣的自己去查询。

以上就是Python绘图的基本入门篇,希望对大家有所帮助,欢迎大家点赞支持。你还可以关注我的视频号,我正在陆续打造更多的可视化作品:

本文分享自微信公众号 - Python与算法社区(alg-channel)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!