【超详细】分享一个Python数据可视化动画库

chatgpt赋能python:Python动画库:提升你的图形表现能力 本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。 阅读详情

今天给大家介绍一个非常棒的数据可视化库,sjvisualizer。

根据时间序列数据制作动态图表,包含条形图、饼图、堆叠条形图、折线图、堆叠面积图。

可以先看一下官方的示例~

只需几行代码,就可以制作电脑浏览器发展史的动态图表。

GitHub地址:

https://github.com/SjoerdTilmans/sjvisualizer

使用pip进行该库的安装。



# 安装sjvisualizer  
pip install sjvisualizer  



然后需要加载特定格式的数据,下面是一个数据示例。

其中第一列中包含日期,随后的每个列标题都是数据类别,下面包含每个日期的值。

此外还可以进行一些自定义配置,比如添加图标、添加自定义颜色以及调整可视化的大小。

大家可以查看相应的文档。

https://www.sjdataviz.com/software

作者还提供了不少其它案例,并且提供了数据源。

同样可以访问如下地址,进行查看。

https://www.sjdataviz.com/data

下面就来看一下官方提供的几个示例代码吧~

/ 01 /

条形图

最受关注的Instagram账号。

数据集情况如下。

发现数据有部分缺失,说明程序会进行补全操作。

具体代码如下。



from sjvisualizer import Canvas  
from sjvisualizer import DataHandler  
from sjvisualizer import BarRace  
import json  
  
  
def main(fps=60, duration=0.35):  
    number\_of\_frames = duration \* 60 \* fps  
  
    # 加载颜色配置文件  
    with open('colors/colors.json') as f:  
        colors = json.load(f)  
  
    # 加载数据源  
    df = DataHandler.DataHandler(excel\_file="data/Insta.xlsx", number\_of\_frames=number\_of\_frames).df  
  
    canvas = Canvas.canvas()  
  
    # 添加条形图图表  
    bar\_chart = BarRace.bar\_race(canvas=canvas.canvas, df=df, colors=colors)  
    canvas.add\_sub\_plot(bar\_chart)  
  
    # 添加静态文字  
    canvas.add\_title("MOST FOLLOWED INSTAGRAM ACCOUNTS", color=(0, 132, 255))  
    canvas.add\_sub\_title("By Number of Followers in Millions", color=(0, 132, 255))  
  
    # 时间设置  
    canvas.add\_time(df=df, time\_indicator="month")  
  
    # 保存颜色配置文件  
    with open("colors/colors.json", "w") as file:  
        json.dump(colors, file, indent=4)  
  
    # 输出视频文件  
    canvas.play(fps=fps, record=True, file\_name="output1.mp4")  
  
  
if \_\_name\_\_ == "\_\_main\_\_":  
    main()  



/ 02 /

饼图

桌面操作系统市场份额。

数据集情况如下,一共有200多条。

其中本次设置了中文字体,可以在代码中进行修改。

饼图动态图表代码如下。



from sjvisualizer import Canvas  
from sjvisualizer import DataHandler  
from sjvisualizer import PieRace  
import json  
  
  
def main(fps=60, duration=0.35):  
    number\_of\_frames = duration \* 60 \* fps  
  
    # 加载颜色配置文件  
    with open('colors/colors.json') as f:  
        colors = json.load(f)  
  
    df = DataHandler.DataHandler(excel\_file="data/DesktopOS.xlsx", number\_of\_frames=number\_of\_frames).df  
  
    canvas = Canvas.canvas()  
  
    # 添加饼图图表  
    bar\_chart = PieRace.pie\_plot(canvas=canvas.canvas, df=df, colors=colors)  
    canvas.add\_sub\_plot(bar\_chart)  
  
    # 加载静态文字  
    canvas.add\_title("桌面操作系统市场份额", color=(0, 132, 255))  
    canvas.add\_sub\_title("2003 - 2009", color=(0, 132, 255))  
  
    # 时间设置  
    canvas.add\_time(df=df, time\_indicator="month")  
  
    # 保存颜色配置文件  
    with open("colors/colors.json", "w") as file:  
        json.dump(colors, file, indent=4)  
  
    canvas.play(fps=fps, record=True, file\_name="output3.mp4")  
  
  
if \_\_name\_\_ == "\_\_main\_\_":  
    main()


/ 03 /

合成图

电脑浏览器发展史动态图表。

可以发现每个图表都带有浏览器的logo。

如果你想要添加自定义的图像logo,是不需要进行任何编码!

只需将图像文件 (.png) 放入assets文件夹中,只要它与我们的数据类别具有相同的名称,程序就会自动选择。

合成图动态图表代码如下。



from sjvisualizer import Canvas  
from sjvisualizer import DataHandler  
from sjvisualizer import BarRace  
from sjvisualizer import PieRace  
from sjvisualizer import Date  
from sjvisualizer import StackedBarChart  
from sjvisualizer import LineChart  
from sjvisualizer import AreaChart  
import json  
  
  
def main(fps=60, duration=0.35):  
    number\_of\_frames = duration \* 60 \* fps  
  
    # 加载颜色配置文件  
    with open('colors/colors.json') as f:  
        colors = json.load(f)  
  
    df = DataHandler.DataHandler(excel\_file="data/browsers.xlsx", number\_of\_frames=number\_of\_frames).df  
  
    canvas = Canvas.canvas()  
  
    width = int(canvas.canvas\["width"\])  
    height = int(canvas.canvas\["height"\])  
  
    chart\_height = int(height / 3.5)  
  
    # 条形图  
    bar\_chart = BarRace.bar\_race(canvas=canvas.canvas, df=df, title="Bar race", colors=colors, height=chart\_height,  
                                 width=int(width / 6), x\_pos=int(height / 3 / 2), y\_pos=int(width / 5) / 2)  
    canvas.add\_sub\_plot(bar\_chart)  
  
    # 饼图  
    pie\_plot = PieRace.pie\_plot(canvas=canvas.canvas, df=df, title="Pie race", colors=colors, height=chart\_height,  
                                width=int(width / 6), x\_pos=int(height / 3 / 2 \* 3), y\_pos=int(width / 5) / 2)  
    canvas.add\_sub\_plot(pie\_plot)  
  
    # 堆叠图  
    stacked = StackedBarChart.stacked\_bar\_chart(canvas=canvas.canvas, df=df, title="Stacked", colors=colors,  
                                                height=chart\_height,  
                                                width=int(width / 6), x\_pos=int(height / 3 / 2 \* 5.5),  
                                                y\_pos=int(width / 5) / 2, number\_of\_bars=25)  
    canvas.add\_sub\_plot(stacked)  
  
    # 折线图时间线  
    events = {  
        "Event 1": \["28/01/1998", "28/01/2000"\],  
        "Event 2": \["28/01/2018", "28/01/2019"\]  
    }  
  
    # 折线图  
    line = LineChart.line\_chart(canvas=canvas, df=df, title="Line chart", colors=colors, height=chart\_height,  
                                width=int(width / 6), x\_pos=int(height / 3 / 2),  
                                y\_pos=int(width / 5) + 1.05 \* chart\_height, events=events)  
    canvas.add\_sub\_plot(line)  
  
    # 面积图  
    area = AreaChart.area\_chart(canvas=canvas, df=df, title="Area chart", colors=colors, height=chart\_height,  
                                width=int(width / 6), x\_pos=int(height / 3 \* 2),  
                                y\_pos=int(width / 5) + 1.05 \* chart\_height)  
    canvas.add\_sub\_plot(area)  
  
    # 时间设置  
    date = Date.date(canvas=canvas.canvas, height=int(height / 20),  
                     width=int(width / 20), x\_pos=int(height / 3 / 2 \* 8), y\_pos=int(width / 5), time\_indicator="month",  
                     df=df)  
    canvas.add\_sub\_plot(date)  
  
    # 保存颜色配置文件  
    with open("colors/colors.json", "w") as file:  
        json.dump(colors, file, indent=4)  
  
    canvas.play(fps=fps, record=True, file\_name="output2.mp4")  
  
  
if \_\_name\_\_ == "\_\_main\_\_":  
    main()  



/ 04 /

总结

相信不少小伙伴,对自己做的静态图表平平无奇而烦恼。

那么试试动态图表,应该是个不错的选择。

不仅有新意,而且还直观+美观。

不过市面上不少工具都需要收费使用,如果你的预算不够,那么Python动态数据可视化库,倒是一个不错的选择,免费~

。

---------------------------END---------------------------

题外话

当下这个大数据时代不掌握一门编程语言怎么跟的上时代呢?当下最火的编程语言Python前景一片光明!如果你也想跟上时代提升自己那么请看一下.

在这里插入图片描述

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。


👉优快云大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img
img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

六、面试宝典

在这里插入图片描述

在这里插入图片描述

简历模板在这里插入图片描述

👉优快云大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

若有侵权,请联系删除

Python动画制作常用库深度解析与实战指南 Python动画编程生态系统的丰富性为不同领域的开发者提供了广泛的选择空间。从简单的数据可视化动画到复杂的3D物理模拟,从教育演示到商业游戏开发,Python动画库几乎覆盖了所有可能的应用场景。这种多样性既体现了Python社区的活力,也反映了动画技术在现代软件开发中的重要地位。通过本文的深入分析,我们可以看到每个库都有其独特的设计理念和适用场景。Matplotlib以其在科学计算领域的深厚底蕴,为数据科学家提供了强大的动态可视化工具;Pygame以其高性能和完整的游戏开发功能,成为交互式应用开发的首选。 阅读详情

相关推荐

使用 Python 进行数据可视化之Matplotlib,腾讯+华为+阿里面试真题分享

*本书结合Python在数据分析领域的特点,介绍如何在数据平台上集成使用Python。本书内容分为3大部分。第1部分(第1~ 3章)为搭建开发环境和导入测试数据;第2部分(第4~ 12章)为Python对HDFS、Hive、Pig、HBase、Spark的操作,主要是对常用API的说明;第3部分(第13~16章)是在前面章节的基础上,介绍如何进行数据的分析、挖掘、可视化等内容。

2401_84023262的博客 1464

python做动画的库有哪些,python做动画用什么软件

这篇文章主要介绍了python做动画主要要学哪些东西,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。

P34677855的博客 953

简单分享下Python数据可视化

Python数据可视化,散点图,直方图等

weixin_64944512的博客 1208

chatgpt赋能python:Python动画库:让你的程序动起来

Python动画库是一组Python工具和库,用于创建各种类型的动画。这些库可以用于动画、可视化和数据展示。它们提供了一些和动画有关的功能,比如绘制图形、控制时间、使图像运动、播放音频等等。Python动画库通常需要一些计算机图形学和图像处理的知识。本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。

sc17332889342的博客 613

分享68个Python爬虫源码总有一个是你想要的

基于Python requests的人人词典数据爬虫,数据共10G左右,爬取时间1小时左右,爬取站点http &&www91dict com 包含:单词、单词词性及翻译、单词发音、单词例句剧照、单词例句及翻译、单词例句发音。Python-FastAPI,Django,Docker 资料整理,数据结构,算法,OCR图像识别处理,爬虫,反向爬取,验证码,操作pdf,反爬策略及应对方案。python相关的一些小程序,小想法,包括爬虫,数据分析,机器学习,计算机视觉,(card_ocr)

zy0412326的专栏 1167

bashplotlib,一个有趣的 Python 数据可视化图形库

在数据可视化领域,Python拥有许多优秀的库,如Matplotlib、Seaborn等,它们可以创建漂亮而复杂的图形。但是,有时候我们可能需要在终端中绘制简单的图形,这时候Bashplotlib就派上了用场。Bashplotlib是一个Python库,可以在终端中绘制基本的图形,如条形图、散点图等。本文将深入探讨Bashplotlib库的功能、用法以及应用场景,并提供丰富的示例代码,帮助了解如何在终端中绘制图形。

m0_67847535的博客 1347

案例上手 Python 数据可视化

课程亮点 6 个常用的数据可视化工具使用方法 20 个案例贯穿各个工具的学习过程 基于 GUI / HTML / Web 网站多种绘图风格 中、美、日三国不同思想的制图工具 从静态到交互,满足不同需要的图示 课程背景 数据可视化是数据分析和机器学习的重要环节,比如数据清洗、特征工程、机器学习、数据分析(特别是报告)、评估等环节都会用到“数据可视化”技术。 数据可视化同时还广泛存在于各...

GitChat 3万+

sjvisualizer,一个超强的Python数据可视化动画库

效果如下,

qq_21478261的博客 726

Python数据可视化创意与技术分享

在当今数据驱动的世界中,将复杂的数据转化为直观、引人入胜的可视化作品已成为一项关键技能。Python凭借其强大的库生态系统,已成为数据可视化领域的首选工具之一。本文将分享一些创新的Python数据可视化技术和创意,帮助你提升数据讲述故事的能力。Dash是Plotly开发的Python框架,可以快速创建交互式Web应用程序而无需前端开发经验。 使用Folium库将数据映射到交互式地图上: 3D可视化 使用Plotly创建令人惊叹的3D数据可视化: 4. 使数据可视化具有叙事性 使用动画展示数据

刘念卿的博客 1014

5种隐藏代码到图片的实用技巧:从Notepad++到Linux命令全解析

本文详细解析了5种将代码或文本隐藏到图片中的实用数据隐写技巧。从Notepad++尾部追加、Windows命令行合并,到编辑图像元数据、使用十六进制编辑器,再到Linux的cat/dd命令,全面覆盖了从图形界面到命令行的工程化实践方法,帮助开发者和安全研究人员掌握隐蔽信息传输与存储的核心技术。

hh234的博客 353

Mumax3高效模拟技巧:如何利用代码模板快速完成磁性材料特性分析

本文介绍了利用Mumax3代码模板库提升磁性材料微磁学模拟效率的核心方法。通过构建模块化的环境配置、材料库和特征长度计算模板,研究者可以快速组装模拟方案,自动化参数扫描与结果分析,从而将精力聚焦于物理问题本身,实现工作效率的指数级提升。

zz67890的博客 550

Python数据可视化实战教程

数据可视化是指利用图形和图像来表示数据,帮助人们更直观地理解和分析信息。它不仅仅是一种技术手段,更是沟通艺术的一部分。就像一个好的演讲者能够用语言打动听众一样,好的数据可视化能够让复杂的数据变得简单易懂。

master_chenchen的博客 1089

tcllib2.0 package - csv

tcl lib 的csv库

shin 861

python 爬虫及数据可视化展示

python 爬虫及数据可视化展示 学了有关python爬虫及数据可视化的知识,想着做一些总结,加强自己的学习成果,也能给各位小伙伴一些小小的启发。 1、做任何事情都要明确自己的目的,想要做什么,打算怎么做,做到什么样的程度,自己有一个清晰的定位,虽然计划永远赶不上变化,但是按计划走,见招拆招或许也是不错的选择。 2、本项目是爬取豆瓣的250部电影,将电影名,电影链接,评分等信息爬取保存到本地。将相关信息以列表的形式展示在网页上,访问者可通我的网站直接挑转到豆瓣查看电影,将评分制作评分走势图,将电影制作成词

ou_shen_xian的博客 1万+

CUDA 12.1环境下的动态库链接修复:从libcusparse.so.12的undefined symbol错误到libnvJitLink.so.12的正确加载

本文详细解析了在CUDA 12.1环境下,PyTorch因libcusparse.so.12找不到libnvJitLink.so.12中的__nvJitLinkAddData_12_1符号而报错的根本原因。通过诊断动态链接过程,提供了创建符号链接、修改环境变量等三种解决方案,并深入探讨了nvJitLink组件的作用及环境配置的最佳实践,帮助开发者彻底解决此类动态库链接问题。

c8d9e0f1的博客 206

IMU预积分【SLAM】

预积分的推导过程比较多,所以这里只记录关键结论。 其实这些公式不太好记忆,因为预积分推导过程的想法来源很巧妙,无法看出物理意义。一切推导的来源: 最好记忆的旋转相对运动量: △Rij≐RiTRj=∏k=ij−1Exp((ω~k−bg,k−ηgd,k)△t)\triangle R_{ij} \doteq R_{i}^{T}R_{j} = \prod_{k=i}^{j-1}Exp((\tilde{\omega}_{k}-b_{g,k}-\eta_{gd,k})\triangle t) △Rij​≐RiT​Rj​

Tong_1024_的博客 1374

6种python数据可视化工具,python数据可视化工具包

Pyecharts具有简洁的 API 设计,使用如丝滑般流畅,支持链式调用,囊括了 30+ 种常见图表,应有尽有,支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab,拥有高度灵活的配置项,可轻松搭配出精美的图表。下面介绍matplotlib的用法,使用matplotlib除了可以作图外,还可以对于图表的参数做一些调整,使得图表更加美观,关于使用matplotlib的建议,可以做一些常用的图表模板,更换代码的数据源就可以生成图表,而不用一点一点的去调整参数。

gk12336的博客 3358

【ELF2学习板】基于OpenMP与RK3588多核架构优化FFTW的并行计算效率

本文详细介绍了如何在ELF2学习板上利用OpenMP与RK3588多核架构优化FFTW的并行计算效率。通过编译支持OpenMP的FFTW库、合理设置线程绑定与调度策略,以及内存访问优化等技巧,显著提升了FFT计算的性能。实测数据显示,多核并行优化可使4096点FFT计算速度提升一倍以上,特别适合信号处理、图像分析等高性能计算场景。

weixin_30352645的博客 608

python与excel做数据可视化-用Python进行数据可视化的10种方法

原标题:用Python进行数据可视化的10种方法2015-11-19 关于转载授权大数据文摘作品,欢迎个人转发朋友圈,自媒体、媒体、机构转载务必申请授权,后台留言“机构名称+转载”,申请过授权的不必再次申请,只要按约定转载即可,但文末需放置大数据文摘二维码。编译|黄念校对|丁一引言艺术之美根植于其所传达的信息。有时候,现实并非我们所看到或感知到的。达芬奇(Da Vinci)和毕加索(Picasso...

weixin_37988176的博客 8598

锁的艺术:Java并发中的常用锁策略与实践

对java锁相关内容进行整理分析:乐观锁 VS 悲观锁+自旋锁 VS 适应性自旋锁+无锁 VS 偏向锁 VS 轻量级锁 VS 重量级锁+公平锁 VS 非公平锁+可重入锁 VS 非可重入锁+独享锁 VS 共享锁

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 171万+

MiniQMT国债逆回购策略Python代码全解析

通过本文的介绍,我们不仅学习了如何在MiniQMT平台上使用Python编写国债逆回购策略,还对策略的逻辑构建、代码实现以及风险管理有了深入的了解。国债逆回购策略是一种适合初学者的低风险投资方式,希望本文能帮助你在量化交易的道路上迈出坚实的一步。

木头大左的博客 1919

6种python数据可视化工具,python数据可视化pyecharts

给大家推荐一个公众号(非本人的):大数据分析与人工智能。个人觉得挺好的,他会推荐一些需要¥的课程(看自己需要哈),还会给出一些特别有趣的案例。因为我主要是学习数据分析与挖掘的,所以可视化工具必不可少。最近在学习过程中找了些质料,所以分享一下。最近比较忙,有空整理好再把他们分享出来吧。

chatgpt002的博客 1729

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

揭开数据可视化的神秘面纱:《Python数据可视化:科技图表绘制》深度解析

在大数据和人工智能的时代,数据可视化作为数据科学的重要组成部分,已经成为不可或缺的技能。面对日益增长的海量数据,如何将复杂的数据以直观、易于理解的方式呈现出来,成为了每个数据分析师和科研人员的必修课。《Python数据可视化:科技图表绘制》正是一本帮助读者掌握这一关键技能的专业书籍。本书结合了编者多年数据分析与科研绘图的实践经验,全面讲解了Python语言的基础知识及其在数据可视化中的应用。书中内容分为两大部分,共11章,结构合理,层次分明。

屿小夏.的知识博客 8万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

python数据可视化pyecharts,python怎么数据可视化

self.myHtml.load(QUrl("file:///D:/360Downloads/Python编程/数据分析+数据可视化/pyecharts/PyQt5+pyecharts/bar1.html"))# self.myHtml.load(QUrl("bar1.html")) #无法显示,要使用绝对地址定位,在地址前面加上 file:/// ,将地址的 \ 改为/原因:在 PyQt5.6(+) 版本中, 新增 QtWebEngineWidgets 代替QtWebKitWidgets。

M3666789的博客 900
上一篇: 轻松玩转Python,5个步骤打造惊艳的折线图
下一篇: 一个超好用的Python库:itertools
Python_P叔
博客等级 码龄3年 5454粉丝 827原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值