Python可视化动图组件ipyvizzu绘制惊艳的可视化动图


Posted in Python onApril 21, 2022

今天小编给大家介绍一款可视化模块,使用它可以绘制出十分惊艳的动图效果,那么当然第一步我们首先是要安装一下该模块,通过pip命令行来安装:

pip install ipyvizzu

牛刀小试

我们首先来简单地使用该模块来绘制一张动图,用Pandas导入数据集,代码如下:

import pandas as pd
from ipyvizzu import Chart, Data, Config

data_frame = pd.read_csv("titanic.csv")

在导入数据集完毕之后,小编先来介绍一下使用该模块的大致步骤,我们实例化Data()对象,然后将导入的数据集放置其中,代码如下:

data = Data()
data.add_data_frame(data_frame)

然后我们再实例化图表对象Chart(),将含有数据集的data放置其中:

chart = Chart()
chart.animate(data)

接下来我们开始绘制图表,需要指定好的是图表的一些属性,例如直方图的话就是X轴Y轴该放置什么样的数据,颜色选择是默认的还是需要另外指定的,以及标题等等:

chart.animate(Config({"x": "Count", "y": "Sex", "label": "Count","title":"Passengers of the Titanic"}))

output:

Python可视化动图组件ipyvizzu绘制惊艳的可视化动图

然后我们再此基础之上,在添加上下面的代码:

chart.animate(Config({"x": ["Count","Survived"], "label": ["Count","Survived"], "color": "Survived"}))

output:

Python可视化动图组件ipyvizzu绘制惊艳的可视化动图

因此该模块绘制出来的所谓的动图,其实就是若干张静态图表的叠加,我们不妨来看一下完整的案例:

import pandas as pd
from ipyvizzu import Chart, Data, Config

data_frame = pd.read_csv("titanic.csv")
data = Data()
data.add_data_frame(data_frame)

chart = Chart()
chart.animate(data)
chart.animate(Config({"x": "Count", "y": "Sex", "label": "Count","title":"Passengers of the Titanic"}))
chart.animate(Config({"x": ["Count","Survived"], "label": ["Count","Survived"], "color": "Survived"}))
chart.animate(Config({"x": "Count", "y": ["Sex","Survived"]}))

output:

Python可视化动图组件ipyvizzu绘制惊艳的可视化动图

散点图与直方图之间的动图转变

因为篇幅有限,小编在这里也不太可能一次性将这个知识点讲完,读者可以自行去官网上查阅

这里小编尝试来绘制绘制一下散点图与直方图之间的动图转变,首先是绘制散点图,代码如下:

import pandas as pd
from ipyvizzu import Chart, Data, Config, Style

data_frame = pd.read_csv("chart_types_eu.csv", dtype={"Year": str})
data = Data()
data.add_data_frame(data_frame)

chart = Chart()
chart.animate(data)

chart.animate(
    Config(
        {
            "channels": {
                "x": ["Joy factors", "Value 6 (+/-)"],
                "y": "Value 5 (+/-)",
                "color": "Joy factors",
                "size": "Value 2 (+)",
                "label": "Country_code",
            },
            "title": "Bubble Plot",
            "geometry": "circle",
        }
    )
)

output:

Python可视化动图组件ipyvizzu绘制惊艳的可视化动图

我们通过title参数在设置标题,size参数在设置散点的大小以及color参数在设置散点的颜色,接下来我们来绘制直方图,代码如下:

chart.animate(
    Config(
        {
            "channels": {
                "y": "Joy factors",
                "x": ["Value 2 (+)", "Country_code"],
                "label": None
            },
            "title": "Bar Chart",
            "geometry": "rectangle",
            "orientation": "vertical",
        }
    ),
    geometry={"delay": 0.7, "duration": 1},
)

output:

Python可视化动图组件ipyvizzu绘制惊艳的可视化动图

然后我们在直方图上标上标记,代码如下:

chart.animate(
    Config(
        {"channels": {"x": {"set": ["Value 2 (+)"]}, "label": {"set": ["Value 2 (+)"]}}}
    )
)

我们总体来看一下出来的动图效果,如下图所示:

Python可视化动图组件ipyvizzu绘制惊艳的可视化动图

无论是静态的图表还是动态,还有其他很多的案例,具体可以查阅
https://vizzuhq.github.io/ipyvizzu/examples/examples.html


Tags in this post...

Python 相关文章推荐
Python实现获取网站PR及百度权重
Jan 21 Python
简述Python中的进程、线程、协程
Mar 18 Python
python 二分查找和快速排序实例详解
Oct 13 Python
浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头
Jan 09 Python
Python下调用Linux的Shell命令的方法
Jun 12 Python
Sanic框架异常处理与中间件操作实例分析
Jul 16 Python
详解10个可以快速用Python进行数据分析的小技巧
Jun 24 Python
django做form表单的数据验证过程详解
Jul 26 Python
Python内置方法实现字符串的秘钥加解密(推荐)
Dec 09 Python
利用Python代码实现一键抠背景功能
Dec 29 Python
使用Python制作一个数据预处理小工具(多种操作一键完成)
Feb 07 Python
使用Python脚本对GiteePages进行一键部署的使用说明
May 27 Python
Python探索生命起源 matplotlib细胞自动机动画演示
Apr 21 #Python
使用python绘制横竖条形图
python多次执行绘制条形图
Apr 20 #Python
Python 数据可视化工具 Pyecharts 安装及应用
python画条形图的具体代码
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
Apr 20 #Python
Pandas 数据编码的十种方法
Apr 20 #Python
You might like
基于ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据
2015/09/23 PHP
PHPStrom中实用的功能和快捷键大全
2015/09/23 PHP
Zend Framework入门应用实例详解
2016/12/11 PHP
javascript一点特殊用法
2008/05/28 Javascript
javascript replace()正则替换实现代码
2010/02/26 Javascript
JavaScript 学习历程和心得分享
2010/12/12 Javascript
那些年,我还在学习jquery 学习笔记
2012/03/05 Javascript
JS中处理时间之setUTCMinutes()方法的使用
2015/06/12 Javascript
javascript自定义in_array()函数实现方法
2015/08/03 Javascript
JS数组排序方法实例分析
2016/12/16 Javascript
js/jquery遍历对象和数组的方法分析【forEach,map与each方法】
2019/02/27 jQuery
JS实现获取当前所在周的周六、周日示例分析
2019/05/11 Javascript
微信小程序把百度地图坐标转换成腾讯地图坐标过程详解
2019/07/10 Javascript
高性能js数组去重(12种方法,史上最全)
2019/12/21 Javascript
Vue实现剪贴板复制功能
2019/12/31 Javascript
微信小程序对图片进行canvas压缩的方法示例详解
2020/11/12 Javascript
django自定义Field实现一个字段存储以逗号分隔的字符串
2014/04/27 Python
让python在hadoop上跑起来
2016/01/27 Python
浅谈Python 集合(set)类型的操作——并交差
2016/06/30 Python
python正则表达式re之compile函数解析
2017/10/25 Python
python json 递归打印所有json子节点信息的例子
2020/02/27 Python
python由已知数组快速生成新数组的方法
2020/04/08 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
python如何建立全零数组
2020/07/19 Python
Selenium 配置启动项参数的方法
2020/12/04 Python
CSS3实现鼠标悬停显示扩展内容
2016/08/24 HTML / CSS
日本最大级玩偶手办购物:あみあみ Amiami
2018/04/23 全球购物
AJAX的优缺点都有什么
2015/08/18 面试题
《会变的花树叶》教学反思
2014/02/10 职场文书
人力资源管理求职信
2014/08/07 职场文书
副检察长四风问题对照检查材料思想汇报
2014/10/07 职场文书
旷课检讨书500字
2014/10/14 职场文书
高中升旗仪式主持词
2015/07/03 职场文书
禁毒心得体会范文
2016/01/15 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
Python爬虫:从m3u8文件里提取小视频的正确操作
2021/05/14 Python