快速绘制动态排序图 — Pyecharts 高级组件 Timeline 实现! (2)

美化完图表之后,利用渲染命令把图表到处至本地 html 文件 t1.render( html路径),最终效果如下(Ps :请不要在意图表中数据的真实性,这里只是为了介绍 Timeline() 的使用方法,里面数据都是随机生成得到的)

save_bar.gif

完整代码部分

from pyecharts import options as opts from pyecharts.charts import Bar,Timeline from pyecharts.faker import Faker import random attr = Faker.choose() t1 = Timeline()# 创建 Timeline对象 for i in range(1969,2020): attr1 = random.shuffle(list(attr)) bar = ( Bar() .add_xaxis(random.sample(attr, len(attr))) .add_yaxis(\'Data\',Faker.values(),label_opts = opts.LabelOpts(position = \'right\'), ) .set_series_opts(label_opts = opts.LabelOpts(is_show = True,position = \'right\')) .reversal_axis() .set_global_opts(title_opts = opts.TitleOpts("{}".format(i), pos_left = \'50%\', ), legend_opts = opts.LegendOpts(pos_right = \'10%\')) ) t1.add(bar,\'{}年\'.format(i)) t1.add_schema( symbol = \'arrow\',# 设置标记时间; #orient = \'vertical\', symbol_size = 2,# 标记大小; play_interval = 900,# 播放时间间隔; control_position = \'right\',# 控制位置; linestyle_opts = opts.LineStyleOpts(width = 5, type_ = \'dashed\', color = \'rgb(255,0,0,0.5)\'), label_opts = opts.LabelOpts(color = \'rgb(0,0,255,0.5)\', font_size = 15, font_style = \'italic\', font_weight = \'bold\', font_family =\'Time New Roman\', position = \'left\', interval = 20, ) ) t1.render("D:/timeline_bar.html") Timeline 组件扩展

以上通过制作 动态排序图来介绍了 Timeline 组件,本案例中图表主体类型为 Bar ,但在实际应用可以根据视觉效果、业务需求等不同应用场景把 Bar 替换为 其他图表类型,只需要把上面代码部分中的 for 循环主体代码替换即可,

for i in range(1969,2020): attr1 = random.shuffle(list(attr)) instance = ...你的图表类型 t1.add(instance,\'{}年\'.format(i))

换一种图表类型,可能会不一样的视觉效果,例如桑葚图:

imag11252.gif

圆环饼图,都有不错的动态效果,都可借助 Timeline 组件来实现

imag112521.gif

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzgpgx.html