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 代码效率的方法
Jul 03 Python
搞笑的程序猿:看看你是哪种Python程序员
Jun 12 Python
深入理解python函数递归和生成器
Jun 06 Python
python安装numpy&安装matplotlib& scipy的教程
Nov 02 Python
pycharm+django创建一个搜索网页实例代码
Jan 24 Python
python3.6+opencv3.4实现鼠标交互查看图片像素
Feb 26 Python
对python opencv 添加文字 cv2.putText 的各参数介绍
Dec 05 Python
Python实现的旋转数组功能算法示例
Feb 23 Python
python实现学员管理系统
Feb 26 Python
python3.7 利用函数os pandas利用excel对文件名进行归类
Sep 29 Python
python 可视化库PyG2Plot的使用
Jan 21 Python
Python对excel的基本操作方法
Feb 18 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
php下安装配置fckeditor编辑器的方法
2011/03/02 PHP
PH P5.2至5.5、5.6的新增功能详解
2014/07/14 PHP
PHP解决高并发的优化方案实例
2020/12/10 PHP
web 页面分页打印的实现
2009/06/22 Javascript
ejs v9 javascript模板系统
2012/03/21 Javascript
js获取IP和PcName(IE)在vs中可用
2013/08/02 Javascript
Nodejs学习笔记之Global Objects全局对象
2015/01/13 NodeJs
jQuery mobile 移动web(4)
2015/12/20 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
JS对象深度克隆实例分析
2017/03/16 Javascript
微信小程序之发送短信倒计时功能
2017/08/30 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
2017/10/12 Javascript
bootstrap select下拉搜索插件使用方法详解
2017/11/23 Javascript
vue 项目常用加载器及配置详解
2018/01/22 Javascript
nodejs多版本管理总结
2018/04/03 NodeJs
js实现敏感词过滤算法及实现逻辑
2018/07/24 Javascript
angularJs使用ng-repeat遍历后选中某一个的方法
2018/09/30 Javascript
vue微信分享出来的链接点开是首页问题的解决方法
2018/11/28 Javascript
vue更改数组中的值实例代码详解
2020/02/07 Javascript
python django 访问静态文件出现404或500错误
2017/01/20 Python
Python正则抓取新闻标题和链接的方法示例
2017/04/24 Python
Python和C/C++交互的几种方法总结
2017/05/11 Python
利用python打印出菱形、三角形以及矩形的方法实例
2017/08/08 Python
Python有序查找算法之二分法实例分析
2017/12/11 Python
python导入csv文件出现SyntaxError问题分析
2017/12/15 Python
python MysqlDb模块安装及其使用详解
2018/02/23 Python
在cmd命令行里进入和退出Python程序的方法
2018/05/12 Python
python调用百度REST API实现语音识别
2018/08/30 Python
VSCode Python开发环境配置的详细步骤
2019/02/22 Python
分享一个H5原生form表单的checkbox特效代码
2018/02/26 HTML / CSS
荷兰演唱会和体育比赛订票网站:viagogo荷兰
2018/04/08 全球购物
We Fashion荷兰:一家国际时装公司
2018/04/18 全球购物
医学专业毕业生推荐信
2013/11/14 职场文书
学生会离职感言
2014/02/11 职场文书
因工资原因离职的辞职信范文
2015/05/12 职场文书
导游词之张家界
2019/10/31 职场文书