发布者认证信息(营业执照和身份证)未完善,请登录后完善信息登录
 终于知道图样图森破-pyecharts之时间轴 - 三农网
Hi,你好,欢迎来到三农网
  • 产品
  • 求购
  • 公司
  • 展会
  • 招商
  • 资讯
当前位置: 首页 » 资讯 » 首页轮播图 找商家、找信息优选VIP,安全更可靠!
终于知道图样图森破-pyecharts之时间轴
发布日期:2021-11-19 22:15:50  浏览次数:42

在可视化工作中,我们通常会根据数据的维度分类来制作图表,比如用户性别、年龄段、地区等自然属性,抑或是用户等级、活跃程度、是否付费等行为属性。这时就需要把各属性值组合在一起进行比较,但量少了还好说,一旦属性值过多,很容易使得绘图区混乱拥挤,严重影响数据的表达效果。

当我们面对这种情况时,一般会采取删减不重要、不必要的数据项或者增加图表数量,此外也确实没有什么多么高效的解决方案。

下面我们为大家介绍一下pyecharts中是如何利用时间轴来组合多个图表的。

顾名思义,时间轴就是一条轴,上面有多个节点,狭义上可以把每个节点理解为年、月、日等时间节点,当然引申一下它还可以表示除时间以外的其他属性。

 举个例子 

有A-J一共10个商品品类,每个品类下面有5个商品,我们要展示这10*5个商品2021年每个月的销量,数据如下图

10个品类倒并不算多,但是每个品类下又有5个商品,两个维度较差后就成了50个,如果我们把这50个全都放在一张图里,肯定是密密麻麻难以区分。所以我们使用时间轴的方式,把品类和商品两个维度分别表示。

看看效果 

如上图效果,可以简单地理解为每个品类做一张图,每张图里用5条曲线表示每个商品,最后将这10张图叠加到一起。最下面的组件即为时间轴,轴上10个点分别表示对应的品类,点击即可切换。

 如何实现 

import pandas as pd import numpy as np from pyecharts import charts, options  data = ('商品销量.xlsx') timeline = (init_opts=(width='1200px', height='600px')) (axis_type='category', orient='horizontal', symbol='circle', symbol_size=10,                     play_interval=3000, is_auto_play=True, is_loop_play=True, is_timeline_show=True,                     control_position='left', pos_left='10%', pos_bottom='0%', width='800px', height='30px') for i in list(set(data['品类'])):     line = (init_opts=(width='1200px', height='600px'))     ([str(x) for x in range(1, 13)])     (         title_opts=('各商品销量趋势图', pos_left='50%'),         legend_opts=(is_show=True, pos_top='50%', pos_right='0%', orient='vertical'))     for j in list(set([data['品类'] == i, '商品'])):         (series_name=j,                        y_axis=list([(data['品类'] == i) & (data['商品'] == j), '销量']))     (chart=line, time_point=i) ('') 

 这都是啥玩意儿

第一步,读取excel文件不必多说。

然后就是创建时间轴对象,和普通图表类型一样进行初始化配置,我们这里只设置高和宽。接下来是设置时间轴的相关属性:

表示时间轴类型,值可以是value(连续数值型)、category(离散型)、time(时间),如果是time,程序会自动计算时间间隔选择合适的显示格式,此处我们适用的是category

是时间轴的放置方向,取值为vertical(垂直)或horizontal(水平)

用来定义时间轴上节点的图标,如:'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'

控制节点图标的大小

5.时间轴会附带一个播放按钮,点击可以播放和暂停,使用play_interval来控制节点的切换时间间隔,单位是毫秒

6.将is_auto_play设置为True,页面打开后将会自动播放

则表示循环播放

就是页面是否显示时间轴组建

是播放按钮的位置,left、right

、pos_right、pos_top、pos_bottom则是控制时间轴位置的参数,分别表示时间轴离容器左、右、上、下侧的距离,可以是百分比也可以是绝对值

和width就是时间轴的高度和宽度

时间轴属性配置完成后,使用循环的方式,把每次创建的图表对象line添加到timeline上即可。这里只是以折线图为例,实际上时间轴可以对多种图表类型进行组合,比如多个饼图、多个地图,或者是不同图表类型之间也可以在同一个时间轴中实现自由切换。

看到这里,大家应该明白,时间轴其实就是类似于excel中切片器的一个筛选工具,是将多个图表叠加在一起,然后手动或自动切换每个图表。这样的好处是,在有限的画图区域尽可能清晰有序地展示出所有信息。

 

VIP企业最新发布
全站最新发布
最新VIP企业
背景开启

三农网是一个开放的平台,信息全部为用户自行注册发布!并不代表本网赞同其观点或证实其内容的真实性,需用户自行承担信息的真实性,图片及其他资源的版权责任! 本站不承担此类作品侵权行为的直接责任及连带责任。

如若本网有任何内容侵犯您的权益,请联系 QQ: 1130861724

网站首页 | 实时热点 | 侵权删除 | 付款方式 | 联系方式 | 法律责任 | 网站地图 ©2022 zxb2b.com 三农网,中国大型农产品交易电商平台 鄂公网安备42018502006996 SITEMAPS | 鄂ICP备14015623号-20

返回顶部