在读技术博客的过程中,我们会发现那些能够把知识、成果讲透的博主很多都会做动态图表。他们的图是怎么做的?难度大吗?这篇文章就介绍了 Python 中一种简单的动态图表制作方法。
看这优美的舞姿
数据暴增的年代,数据科学家、分析师在被要求对数据有更深的理解与分析的同时,还需要将结果有效地传递给他人。 如何让目标听众更直观地理解? 当然是将数据可视化啊,而且最 好是动态可视化。
本文将以线型图、条形图和饼图为例,系统地讲解如何让你的数据图表动起来 。
这些动态图表是用什么做的?
接触过数据可视化的同学应该对 Python 里的 Matplotlib 库并不陌生。它是一个基于 Python 的开源数据绘图包,仅需几行代码就可以帮助开发者生成直方图、功率谱、条形图、散点图等。这个库里有个非常实用的扩展包——FuncAnimation,可以让我们的静态图表动起来。
FuncAnimation 是 Matplotlib 库中 Animation 类的一部分,后续会展示多个示例。如果是首次接触,你可以将这个函数简单地理解为一个 While 循环,不停地在 “画布” 上重新绘制目标数据图。
如何使用 FuncAnimation?
这个过程始于以下两行代码:
import matplotlib.animation as ani
animator = ani.FuncAnimation(fig, chartfunc, interval = 100)
从中我们可以看到 FuncAnimation 的几个输入:
-
fig 是用来 「绘制图表」的 figure 对象;
-
chartfunc 是一个以数字为输入的函数,其含义为时间序列上的时间;
-
interval 这个更好理解,是帧之间的间隔延迟,以毫秒为单位,