今天教大家如何用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 -
----------------- 长按识别下方二维码,并关注公众号 ![]()
1.回复“PY”领取1GB Python数据分析资料
2.回复“BG”领取3GB 名企数据分析报告



