↑ 关注 + 星标 ~ 有趣的不像个技术号每晚九点,我们准时相约  

作者:木木小宇宙

来源:Python数据分析实战与AI干货

大家好,我是朱小五

今天交流群有同学问Pyecharts1.x版本的使用方法,小五正好分享一篇,是对这个库新版本的系统讲解,值得细看!

当然详细版最好还是看文档

文档:https://pyecharts.org/#/

示例:https://gallery.pyecharts.org/

01 前言

Pyecharts在1.x版本之后迎来重大更新,与老版本(0.5X)已是两个完全不同的版本,所以很多小伙伴在使用Pyecharts出现了类似'pyecharts' has no attribute 'xxx'的报错,那是因为你安装了1.x的版本却使用了0.5x的调用方法。

当然如果你更习惯使用0.5X版本的可以通过如下语句来进行安装:pip install pyecharts==0.5.11

安装1.x版本(仅支持Python 3.6+):pip install pyecharts

本文将会介绍Pyecharts1.x版本的使用方法,本文所有语句均基于v1.6.2,通过以下语句查询使用pyecharts版本:

import pyecharts

print(pyecharts.__version__)

02 基本使用

链式调用

pyecharts在v1.x之后支持链式调用,具体语句如下:

from pyecharts.charts import Barfrom pyecharts import options as opts

# 示例数据cate = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']data1 = [123, 153, 89, 107, 98, 23]data2 = [56, 77, 93, 68, 45, 67]

# 1.x版本支持链式调用bar = (Bar()       .add_xaxis(cate)       .add_yaxis('电商渠道', data1)       .add_yaxis('门店', data2)       .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"))      )

bar.render_notebook()

:其实这运行结果都是动态的,这里只放上截图,可在自己电脑上Jupyter 中运

行查看!

全局配置

可以通过全局配置(.set_global_opts():)控制以下区域

系列配置

可以通过系列配置(.set_global_opts():)控制图表中的文本,线样式,标记等.

"""系列配置项使用示例:1. 不显示数值2. 标记每个系列的最大值"""bar = (Bar()       .add_xaxis(cate)       .add_yaxis('电商渠道', data1)       .add_yaxis('门店', data2)       .set_series_opts(label_opts=opts.LabelOpts(is_show=False),                        markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max", name="最大值"),]))       .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"))      )

bar.render_notebook()

03 饼图

from pyecharts.charts import Piefrom pyecharts import options as opts

# 示例数据cate = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']data = [153, 124, 107, 99, 89, 46]pie = (Pie()       .add('', [list(z) for z in zip(cate, data)],            radius=["30%", "75%"],            rosetype="radius")       .set_global_opts(title_opts=opts.TitleOpts(title="Pie-基本示例", subtitle="我是副标题"))       .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {d}%"))      )

pie.render_notebook()

04 折线图

from pyecharts.charts import Linefrom pyecharts import options as opts

# 示例数据cate = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']data1 = [123, 153, 89, 107, 98, 23]data2 = [56, 77, 93, 68, 45, 67]"""折线图示例:1. is_smooth 折线 OR 平滑2. markline_opts 标记线 OR 标记点"""line = (Line()       .add_xaxis(cate)       .add_yaxis('电商渠道', data1,                   markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(type_="average")]))       .add_yaxis('门店', data2,                   is_smooth=True,                   markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(name="自定义标记点",                                                                              coord=[cate[2], data2[2]], value=data2[2])]))       .set_global_opts(title_opts=opts.TitleOpts(title="Line-基本示例", subtitle="我是副标题"))      )

line.render_notebook()

05 漏斗图

from pyecharts.charts import Funnelfrom pyecharts import options as opts

# 示例数据cate = ['访问', '注册', '加入购物车', '提交订单', '付款成功']data = [30398, 15230, 10045, 8109, 5698]"""漏斗图示例:1. sort_控制排序,默认降序;2. 标签显示位置"""funnel = (Funnel()          .add("用户数", [list(z) for z in zip(cate, data)],                sort_='ascending',               label_opts=opts.LabelOpts(position="inside"))          .set_global_opts(title_opts=opts.TitleOpts(title="Funnel-基本示例", subtitle="我是副标题"))         )

funnel.render_notebook()

06 热力图

from pyecharts.charts import HeatMapfrom pyecharts import options as optsfrom pyecharts.faker import Fakerimport random

# 示例数据data = [[i, j, random.randint(0, 50)] for i in range(24) for j in range(7)]heat = (HeatMap()        .add_xaxis(Faker.clock)        .add_yaxis("访客数",                    Faker.week,                    data,                   label_opts=opts.LabelOpts(is_show=True, position="inside"))        .set_global_opts(            title_opts=opts.TitleOpts(title="HeatMap-基本示例", subtitle="我是副标题"),            visualmap_opts=opts.VisualMapOpts(),            legend_opts=opts.LegendOpts(is_show=False))       )

heat.render_notebook()

07 地理图

16
17_map.render_notebook()

08 地理热点图

from pyecharts import options as optsfrom pyecharts.charts import Mapimport random

province = ['广东', '湖北', '湖南', '四川', '重庆', '黑龙江', '浙江', '山西', '河北', '安徽', '河南', '山东', '西藏']data = [(i, random.randint(50, 150)) for i in province]_map = (        Map()        .add("销售额", data, "china")        .set_global_opts(            title_opts=opts.TitleOpts(title="Map-基本示例"),            legend_opts=opts.LegendOpts(is_show=False),            visualmap_opts=opts.VisualMapOpts(max_=200, is_piecewise=True),        )    )

_map.render_notebook()

09 组合图标

from pyecharts import options as optsfrom pyecharts.charts import Map, Bar, Gridfrom pyecharts.globals import ChartType, ThemeTypeimport random

province = ['武汉', '十堰', '鄂州', '宜昌', '荆州', '孝感', '黄石', '咸宁', '仙桃']data = [324, 125, 145, 216, 241, 244, 156, 278, 169]bar = (Bar()       .add_xaxis(province)       .add_yaxis('营业额', data)       .set_series_opts(label_opts=opts.LabelOpts(is_show=False))       .set_global_opts(            title_opts=opts.TitleOpts(title="Grid-Bar")        )      )

line = (Line()       .add_xaxis(province)       .add_yaxis('营业额', data,                   markline_opts=opts.MarkLineOpts(data=[opts.MarkLineItem(type_="average")]))       .set_global_opts(title_opts=opts.TitleOpts(title="Grid-Line", pos_top="48%"))      )

grid = (        Grid()        .add(bar, grid_opts=opts.GridOpts(pos_bottom="60%"))        .add(line, grid_opts=opts.GridOpts(pos_top="60%"))    )

grid.render_notebook()

10 主题设置

from pyecharts import options as optsfrom pyecharts.charts import Barfrom pyecharts.globals import ThemeType

# 示例数据cate = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']data1 = [123, 153, 89, 107, 98, 23]data2 = [56, 77, 93, 68, 45, 67]"""主题设置:默认white"""bar = (Bar(init_opts=opts.InitOpts(theme=ThemeType.ROMANTIC))       .add_xaxis(cate)       .add_yaxis('电商渠道', data1)       .add_yaxis('门店', data2)       .set_series_opts(label_opts=opts.LabelOpts(is_show=False),                        markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max", name="最大值"),]))       .set_global_opts(title_opts=opts.TitleOpts(title="Theme-ROMANTIC"))      )

bar.render_notebook()

11 时间轴

from pyecharts import options as optsfrom pyecharts.charts import Bar, Timelinefrom pyecharts.globals import ThemeType

# 示例数据cate = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']tl = Timeline()for i in range(2015, 2020):    bar = (        Bar()        .add_xaxis(cate)        .add_yaxis("线上", [random.randint(50, 150) for _ in cate])        .add_yaxis("门店", [random.randint(100, 200) for _ in cate])        .set_global_opts(title_opts=opts.TitleOpts("手机品牌{}年营业额".format(i)))    )    tl.add(bar, "{}年".format(i))

tl.render_notebook()

近期文章,点击图片即刻查看

后台回复「进群」,加入读者交流群~

点击积分,了解积分规则~

干货,收藏,点赞!

觉得不够全直接上官方文档

朱小五

pyecharts x轴全显示_超详细Pyecharts 1.x 教程,让你的图表动起来相关推荐

  1. bios密码解锁软件_超详细的CFG解锁教程,带你进完善oc引导,提升黑苹果性能

    oc引导是clover之后的又一个黑苹果引导,它可以让你的电脑更像白苹果.但是要想充分发挥oc的性能还需要解锁电脑的CFG功能,有的电脑BIOS里面有CFG选项,可以很容易的解锁.但是一些电脑的BIO ...

  2. python程序不出结果_超详细的Python入门教程,1小时就可以学会

    为什么使用Python 假设我们有这么一项任务:简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200. 思路:用shell编程.(Linux通常是 ...

  3. 940mx黑苹果驱动_超详细黑苹果安装图文教程送EFI配置合集及系统

    一.准备工作 所有工具在:黑苹果资源站可以下载到 网站地址:https://jnzr.ewys.net/ 1.两张16g的u盘 其中一张安装pe系统 (老毛桃等)这里自行安装 2.电脑(废话)这里以小 ...

  4. cmakelist官方教程_超详细的cmake入门教程

    什么是cmake 你或许听过好几种 Make 工具,例如 GNU Make ,QT 的 qmake ,微软的 MSnmake,BSD Make(pmake),Makepp,等等.这些 Make 工具遵 ...

  5. html+css+js适合前端小白的实战全解(超详细)——2048小游戏(三)

    续上一小节,我们回到newgame()这个函数,我们之前只做了init()内函数,相当于一个初始化操作 现在,我们需要再随机两个两个生成数字. 随机生成数字在这个游戏里会经常出现,用户移动一步,也会产 ...

  6. html+css+js适合前端小白的实战全解(超详细)——2048小游戏(二)

    续上一小节,我们可以发现每一个grid-cell上的数字初始时并不在格子里. 这些数字可以随着玩家的操作而移动 ​ 我们可以想象:初始时每一个格子上的数为0,他们并不显示 ↓ 只有当grid-cell ...

  7. (一)Ubuntu安装详细教程(从镜像制作到NVIDIA驱动安装全流程)——超详细的图文教程

    Ubuntu安装详细教程(从下载镜像到安装NVIDIA驱动) 1.下载镜像文件 2.制作硬盘镜像 2.1 安装UltraISO并打开ISO文件 2.2 制作硬盘镜像 2.3 检查是否成功 3.划分磁盘 ...

  8. 纯干货分享:CCD图像传感器知识全解,超详细!

    纯干货分享:CCD图像传感器知识全解,超详细! 今天给大家介绍CCD图像传感器,关注我们的朋友会很明显的知道,鼎易鸿基&万酷电子在介绍产品扫描枪的时候会有这样一句话"采用工业级高性能 ...

  9. 超详细的gnuplot使用教程【2】

    超详细的gnuplot使用教程 1.gnuplot参数介绍及演示 1.1首先来解释一下会用到的各类参数以及其解释 1.2 画图实际测试 1.3 其它参数介绍(约定范围.坐标轴设定) 1.3.1 约束画 ...

最新文章

  1. Opengl-基本概念-转换矩阵坐标系(最难理解的两章)
  2. 快捷技巧之一键查自己电脑所有打开的端口的具体操作
  3. Spring系列之bean的使用
  4. com组件 的劫持_2345.com/365j.com的IE首页劫持手动修复方法+修复工具
  5. 交叉25码是什么条码
  6. SQL 查询 skip locked的使用
  7. LabVIEW编程运动控制PID入门
  8. DS18B20数字温度计使用(转)
  9. 一文详解立体匹配(附代码)
  10. 简智音科技:抖音短视频账号限流后的解决方法
  11. WPF真入门教程02--新建WPF工程
  12. VB6基本数据库应用(二):建立数据库
  13. 实时计算 java基础:类的结构之五:内部类
  14. Ubuntu 16.04 tf-faster-rcnn 在CPU下训练数据
  15. Ubuntu 安装sogo输入法
  16. 液晶显示屏行业信息汇总
  17. 淘宝宝贝描述模板DIV无法使用BACKGROUND属性的终极解决方案
  18. 如何在2018年变成一个牛B的程序员?
  19. 中央民族大学计算机排名2015,2015年985大学排名排名汇总
  20. 赢在微创新 之 痛点 尖叫点

热门文章

  1. 从源码分析DEARGUI之异步调用函数对比
  2. 没附上语音包资源的python文字转语音
  3. 解决 —— SublimeText3: No module named ‘urllib2′
  4. Java并发编程高级篇(八):在执行器中取消任务
  5. CAS SSO使用指南
  6. C 文件操作库函数总结
  7. Python - while语句和if语句 的 用法 及 代码
  8. 面试必备杀技:SQL查询专项训练!
  9. KS001 基于Springboot机票预订系统
  10. GroupingComparator分组