matplotlib 您所在的位置:网站首页 抖音相关数据图表怎么做 matplotlib

matplotlib

2024-07-13 00:56| 来源: 网络整理| 查看: 265

大家好,又见面了,我是全栈君。

“ matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频”

在之前已经告诉大家如何生成会动的数据统计图,这次我们把它应用到数据排行中吧!

matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]01— 柱形图实现第一步:实现一个最简单柱形统计图代码语言:javascript复制from matplotlib import pyplot#导入模块 ​ fig, ax = pyplot.subplots()#返回一个包含figure和axes对象的元组,将元组分解为fig和ax两个变量 def graph(num): ax.barh(1, num, color='#adb0ff') # 绘制水平方向的条形图barh() ax.barh(3, num, color='#ffb3ff') # 绘制水平方向的条形图barh() ax.barh(5, num, color='#90d595') # 绘制水平方向的条形图barh() pyplot.show() graph(1)

实现结果如图所示:我们绘画了三条统计图。

matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂] 第二步:给每条柱体加上文字。代码语言:javascript复制ax.text(num,1, "广东省", size=14, weight=600, ha='right', va='bottom')#添加文字并设置样式第三步:解决乱码:

这里因为中文会出现乱码,因此我们还需要做出特殊处理

代码语言:javascript复制from pylab import mplmpl.rcParams['font.sans-serif'] =["SimHei"]mpl.rcParams['axes.unicode_minus'] = Falsematplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]第四步:赋予每条柱形不同的值,使他看起来在变动。matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]

我们这里引入了math模块,随便表示一下好了。

第五步,让我们的数据动起来:

结果发现一个问题,动是动起来了,但是文字还在。如何处理呢。

matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]代码语言:javascript复制from matplotlib import animation from matplotlib import pyplot from pylab import mpl import math ​ mpl.rcParams['font.sans-serif'] =["SimHei"] mpl.rcParams['axes.unicode_minus'] = False fig, ax = pyplot.subplots()#返回一个包含figure和axes对象的元组,将元组分解为fig和ax两个变量 ​ def graph(num): ax.clear()#清除,不叠加 ax.barh(1, num, color='#adb0ff') # 绘制水平方向的条形图barh() ax.text(num,1, "广东省", size=14, weight=600, ha='right', va='bottom')#添加文字并设置样式 ax.barh(3, num / math.pi, color='#ffb3ff') ax.text(num / math.pi, 3, "北京省", size=14, weight=600, ha='right', va='bottom') ax.barh(5, num/math.tan(1), color='#90d595') ax.text(num/math.tan(1),5, "云南省", size=14, weight=600, ha='right', va='bottom') pyplot.title('人口工作情况对比')#添加图标题 animator=animation.FuncAnimation(fig, graph, frames=range(1,100),interval=1) pyplot.show()#移动到函数外面,不然不会动态显示

我们继续来完善一下,做出动态的效果:

matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]matplotlib-bilibili,抖音很火的动态数据视频自动生成(第三节)-柱形数据视频[通俗易懂]02— 完整代码

注意:保存视频,或者保存图片,需要使用到插件,并设置环境变量​。

windows 如何安装ffmpeg

代码语言:javascript复制from matplotlib import animation from matplotlib import pyplot from pylab import mpl import math ​ mpl.rcParams['font.sans-serif'] =["SimHei"] mpl.rcParams['axes.unicode_minus'] = False fig, ax = pyplot.subplots()#返回一个包含figure和axes对象的元组,将元组分解为fig和ax两个变量 ​ def graph(num): ax.clear() if num=50: ax.barh(1, 50, color='#adb0ff') # 绘制水平方向的条形图barh() ax.text(50,1, "广东省", size=14, weight=600, ha='right', va='bottom')#添加文字并设置样式 if num=70: ax.barh(3, num-1, color='#ffb3ff') ax.text(num-1, 3, "北京省", size=14, weight=600, ha='right', va='bottom') ax.barh(5, num, color='#90d595') ax.text(num,5, "云南省", size=14, weight=600, ha='right', va='bottom') pyplot.title('人口工作情况对比')#添加图标题 ​ animator=animation.FuncAnimation(fig, graph, frames=range(1,100),interval=1) animator.save(filename="数据.gif",writer='pillow')#保存gif animator.save(filename="数据.mp4")#保存视频 pyplot.show()#移动到函数外才能正常显示

这样,我么就完成了数据动态视频的制作​。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/111367.html原文链接:https://javaforall.cn



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有