来源:Python数据分析之禅
今天教大家如何用python做一个动态的,高端又好看的动态图表,不要编程基础也可轻松学会,而且学完就可以马上用上,成果图如下:
它就是python的motionchart库,能够用pandas的dataframe数据直接创建交互式的动态图表,非常方便
1.安装
motionchart的安装比较简单,直接在命令行输入如下代码即可:
pip install motionchart
2.导入模块
from motionchart.motionchart import MotionChart, MotionChartDemo
3.测试
MotionChartDemo()
这一步会报错,因为源文件motionchart.py中,把月份设置成0了,如下图:
把他们都改成正常年份:
再试一下就成功了
4.导入数据
import pandas as pddata=pd.read_excel('motionchart.xlsx')data
年份 | 商品 | 进价 | 售价 | 售量 | |
---|---|---|---|---|---|
0 | 2015 | 猪肉 | 8.0 | 10.0 | 500 |
1 | 2016 | 猪肉 | 9.0 | 11.0 | 600 |
2 | 2017 | 猪肉 | 10.0 | 12.0 | 700 |
3 | 2018 | 猪肉 | 11.0 | 13.0 | 800 |
4 | 2019 | 猪肉 | 12.0 | 14.0 | 700 |
5 | 2020 | 猪肉 | 20.0 | 25.0 | 600 |
6 | 2021 | 猪肉 | 30.0 | 34.0 | 500 |
7 | 2015 | 白菜 | 1.0 | 1.5 | 1000 |
8 | 2016 | 白菜 | 1.5 | 2.0 | 1200 |
9 | 2017 | 白菜 | 1.8 | 2.3 | 1300 |
10 | 2018 | 白菜 | 2.0 | 2.5 | 1200 |
11 | 2019 | 白菜 | 2.2 | 2.7 | 1400 |
12 | 2020 | 白菜 | 2.3 | 2.8 | 1500 |
13 | 2021 | 白菜 | 2.4 | 3.0 | 1600 |
14 | 2015 | 苹果 | 3.0 | 5.0 | 2000 |
15 | 2016 | 苹果 | 4.0 | 6.0 | 2100 |
16 | 2017 | 苹果 | 5.0 | 7.0 | 2000 |
17 | 2018 | 苹果 | 6.0 | 8.0 | 2200 |
18 | 2019 | 苹果 | 7.0 | 9.0 | 2300 |
19 | 2020 | 苹果 | 8.0 | 10.0 | 2500 |
20 | 2021 | 苹果 | 9.0 | 11.0 | 2400 |
5.显示动态图表
from motionchart.motionchart import MotionChartmc = MotionChart(df = data, title = "商品价格与售量变化图", key = '年份', x = '售价', y = '售量', size = '售量', category = '商品',)mc.to_notebook()
点击Data会显示原始数据:
MotionChart的参数介绍如下:
df:指定名称的pandas dataframe,用于创建运动图,默认是dftitle:图像标题 key:“运动”变量的列号(不需要时间)x:x轴y:y轴size:该变量用于确定圆的大小color:该变量用于确定圆的颜色category: 该变量用于确定圆的种类play:决定立即开始运动或者你必须先点击播放loop:决定立即开始运动或者你必须先点击播放width:宽度像素图,默认900height:高度图的像素,默认700varLabels:列的标签列表(默认是dataframe的列标题)
motionchart有4种输出方式:
mc.to_notebook() #在jupyter中显示mc.to_browser() #在浏览器中显示mc.to_clipboard() #复制到鼠标mc.to_file() #保存成html文件
---------End---------
后台回复「微信群」,将邀请加入读者交流群。
《Python知识手册》| 《Markdown速查表》|《Python时间使用指南》|《Python字符串速查表》|《SQL经典50题》|《Python可视化指南》|《Plotly可视化指南》|《Pandas使用指南》|《机器学习精选》
????分享、点赞、在看,给个三连击呗!????