前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pyecharts 画时间线图

pyecharts 画时间线图

作者头像
luckzack
修改2023-10-09 14:59:56
2420
修改2023-10-09 14:59:56
举报

可视化对于数据分析师的工作重要性不言而喻。在Python众多可视化库中,matplotlib+seaborn+pyecharts是个人常用的组合。今天,就简单分享一个用pyecharts制作时间线图的例子,实现非常简单,效果却很强大。

pyecharts是python对百度开源echarts框架的一个封装,接口丰富、设置多样、图表可交互。需要指出的是,pyecharts从0.5版本升级到1.0版本后,接口调用形式发生很大变化,一度令人感到陌生,但实际上只是传参方式有些不同而已。

在pyecharts绘制基本图表的基础上,当为了体现指标随时间的变化趋势时,时间线图表是一个理想的选择。而绘制时间线图实际上非常简单,仅需三步即可:

  • 生成时间线对象
  • 创建基本图表对象
  • 将基本图表对象加入到时间线

某种意义上讲,时间线可理解为基本图表的一个容器,且其接口风格与基本图表很是相近。

举个例子感受下:

代码语言:javascript
复制
from pyecharts.charts import Pie, Timeline
from pyecharts import options as opts

datas = {
    220:[('魏', 50), ('蜀', 15), ('吴', 35)],
    230:[('魏', 60), ('蜀', 20), ('吴', 20)],
    240:[('魏', 40), ('蜀', 30), ('吴', 30)],
    250:[('魏', 35), ('蜀', 40), ('吴', 25)],
    260:[('魏', 50), ('蜀', 20), ('吴', 30)],
    270:[('魏', 60), ('蜀', 15), ('吴', 25)],
    280:[('魏', 80), ('蜀', 10), ('吴', 10)]
}

# 1.创建时间线对象
tl = Timeline()
for year, data in datas.items():
    # 2.创建单个子图对象
    pie = Pie().add(year, data)
    # 3.将子图对象添加到时间线
    tl.add(pie, year)

tl.render('三国势力历年变化.html')

三国势力历年变化趋势(数据纯属虚构):

虽然叫"时间线",但"时间轴"可以是任何系列数据,绘制方法还是一样的套路:

代码语言:javascript
复制
from pyecharts.charts import Timeline, Radar
from pyecharts import options as opts

datas = {
    '关羽' : [[5, 4.8, 4.4, 4.7, 4.9]],
    '张飞' : [[5, 4.6, 4.7, 4.6, 4.8]],
    '赵云' : [[5, 4.8, 4.7, 4.9, 4.7]],
    '马超' : [[4.3, 4.5, 4.6, 4.7, 4.7]],
    '黄忠' : [[4.5, 4.5, 4.5, 4.6, 4.7]]
}
tl = Timeline()
schema = [opts.RadarIndicatorItem(name=name, max_=5) for name in ('忠', '义', '礼', '智', '信')]
for hero, data in datas.items():
    radar = Radar().add_schema(schema=schema).add(hero, data)
    tl.add(radar, hero)
tl.render('五虎上将能力对比.html')

蜀国五虎上将能力对比(数据纯属虚构):


如此操作简单而又颇具实效的时间线图,叫人怎能不为之拍手称快

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-10-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档