大家好,本文将围绕用python做好看的动态图像展开说明,怎样用python绘制动图是一个很多人都想弄明白的事情,想搞清楚python制作动态数据图需要先了解以下几个事情。
前言
matplotlib中可以显示各种各种的图标,如折线、直方图、散点图、柱状图、饼图等,还可以显示3D图像,所以在很多场合都可以使用。
那么如果我们想要使图表动态化显示起来,该如何实现呢?
如下效果:
配置:
平台:windows
工具:visual studio code
语言:python
库:matplotlib、PyQt5
1、显示静态图表
用matplotlib显示一张图表非常简单,如下:
def on_btn_chart1_click(self):
"""显示图表"""
fig,ax=plt.subplots()
fig.suptitle('pic1')
data=np.random.randn(100)
self.ln=plt.plot(data)
plt.show()
显示效果:
matplotlib利用subplots创建了一个Figure的实例,Figure就是用于显示图表或图像的窗口python用turtle画简单树形图。
而plot产生了一个二维折线图表格式,折线图表的数据来自于numpy产生的随机数。
2、动态图表
如果我们要实现动态图表,其实有多种方式,因为matplotlib产生的图表其实就是一帧帧图片,麻烦的方式是我们用循环产生多张图片,然后将图片组合起来生成动画。
但matplotlib本身提供了直接产生动画的类,即Animation。
A base class for Animations.
This class is not usable as is, and should be subclassed to provide needed
behavior.