pyEcharts安装及使用指南

ECharts是一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器,底层依赖轻量级的Canvas类库ZRender,提供直观、生动、可交互、可高度个性化定制的数据可视化图表。ECharts提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap,多维数据可视化的平行坐标,还有用于BI的漏斗图、仪表盘,并且支持图与图之间的混搭。

pyEcharts目前有0.5及以下版本和1.0以上版本,新版的pyecharts发生了许多变化。最为明显的是以前调整变量的命令现在都发生了改变。width是旧版本中对图表调整的参数,在新版本这一功能被调整到了option里面。网上大部分教程都是0.5及以下版本。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyecharts==0.5.10

自从 v0.3.2 开始,为了缩减项目本身的体积以及维持 pyecharts 项目的轻量化运行,pyecharts 将不再自带地图 js 文件。如用户需要用到地图图表,可自行安装对应的地图文件包。下面介绍如何安装。

  • 全球国家地图: echarts-countries-pypkg (1.9MB): 世界地图和 213 个国家,包括中国地图
  • 中国省级地图: echarts-china-provinces-pypkg (730KB):23 个省,5 个自治区
  • 中国市级地图: echarts-china-cities-pypkg (3.8MB):370 个中国城市
  • 中国县区级地图: echarts-china-counties-pypkg (4.1MB):2882 个中国县·区
  • 中国区域地图: echarts-china-misc-pypkg (148KB):11 个中国区域地图,比如华南、华北。

选择自己需要的安装

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple echarts-countries-pypkg

 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple echarts-china-provinces-pypkg

 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple echarts-china-cities-pypkg

 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple echarts-china-counties-pypkg

 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple echarts-china-misc-pypkg

 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple echarts-united-kingdom-pypkg#如果提示缺少这个就安装一下

pip  install pyecharts_snapshot

教育网用户在install 增加 –i https://pypi.tuna.tsinghua.edu.cn/simple

注意:
1.如果不知道安装那个,就全部安装,反正不会错,安装版本一定是要在0.5及以下。
2.如果你安装的是1.0及以上版本,请自行阅读官方文档。https://pyecharts.org/#/zh-cn/intro
3.安装完一定要重启pycharm!!!

1.柱状图

代码如下:

# -*- coding:utf-8 -*-

from pyecharts import Bar

bar = Bar("贵州GDP柱状图", "副标题")

bar.add("GDP",["贵阳市", "遵义市", "六盘水市", "安顺市", "黔东南州"],[40, 30, 26, 22, 15])

bar.show_config()

bar.render()

代码运行之后,会在本地生成一个render.html文件,打开输出如下所示图形。

from pyecharts import Bar

#从pyecharts库中导入Bar子类

bar = Bar("贵州GDP柱状图", "副标题")

#定义Bar()柱状图,同时设置主标题和副标题

bar.add()

#调用add()函数添加图表的数据和设置各种配置项

bar.show_config()

#打印输出图表的所有配置项

bar.render()

#生成render.html文件,也可以设置路径和文件名

2.横向柱状图

代码如下:

# -*- coding:utf-8 -*-

from pyecharts import Bar

bar = Bar("贵州GDP柱状图", "副标题")

city = ["贵阳市", "遵义市", "六盘水市", "安顺市", "黔东南州"]

data1 = [40, 30, 26, 22, 15]

data2 = [13, 43, 32, 38, 20]

bar.add("2017年GDP", city, data1)

bar.add("2016年GDP", city, data2, is_convert=True)

bar.show_config()

bar.render()

输出如下图所示:

3.带有涟漪特效动画的散点图

这段代码参考简书网 https://www.jianshu.com/p/b718c307a61c ,强烈推荐大家学习chenjiandongx大神的文章。完整代码如下:

# -*- coding:utf-8 -*-

from pyecharts import EffectScatter

es = EffectScatter("动态散点图各种图形示例")

es.add("", [10], [10], symbol_size=20, effect_scale=3.5, effect_period=3, symbol="pin")

es.add("", [20], [20], symbol_size=12, effect_scale=4.5, effect_period=4, symbol="rect")

es.add("", [30], [30], symbol_size=30, effect_scale=5.5, effect_period=5, symbol="roundRect")

es.add("", [40], [40], symbol_size=10, effect_scale=6.5, effect_brushtype='fill', symbol="diamond")

es.add("", [50], [50], symbol_size=16, effect_scale=5.5, effect_period=3, symbol="arrow")

es.add("", [60], [60], symbol_size=6, effect_scale=2.5, effect_period=3, symbol="triangle")

es.render() 

运行结果如下图所示:

4.绘制3D图形

绘制3D折线图代码如下:

# -*- coding:utf-8 -*-

from pyecharts import Line3D

import random

data = [[1,2,3,4], [1,2,3,4], [0,4,8,16]]

Line3D = Line3D("3D 折线图示例", width=1200, height=600)

Line3D.add("", data, is_visualmap=True)

Line3D.render()

输出图形如下所示:

绘制3D散点图,并设置随机散点坐标,代码如下所示:

# -*- coding:utf-8 -*-

from pyecharts import Scatter3D

import random

data = [[random.randint(0, 100), random.randint(0, 100), random.randint(0, 100)] for _ in range(80)]

range_color = ['#313695', '#4575b4', '#74add1', '#abd9e9', '#e0f3f8', '#ffffbf',

               '#fee090', '#fdae61', '#f46d43', '#d73027', '#a50026']

scatter3D = Scatter3D("3D 散点图示例", width=1200, height=600)

scatter3D.add("", data, is_visualmap=True, visual_range_color=range_color)

scatter3D.render()   

输出结果非常美观,如下图所示:

5.仪表盘

代码如下:

# -*- coding:utf-8 -*-

from pyecharts import Gauge

g = Gauge("仪表盘图形","副图标")

g.add("重大项目", "投资占比", 66.66)

g.show_config()

g.render("g.html")

输出图形如下所示:

6.水球图

代码如下:

# -*- coding:utf-8 -*-

from pyecharts import Liquid

liquid = Liquid("水球图")

liquid.add("Liquid", [0.8])

liquid.show_config()

liquid.render()

输出如下图所示:

讲到这里基本的图形讲解完毕,更多知识推荐大家结合实际应用研究。

利用echarts画地图(热力图)(世界地图,省市地图,区县地图)

世界地图

from pyecharts import Map

value = [95.1, 23.2, 43.3, 66.4, 88.5]

attr = ["China", "Canada", "Brazil", "Russia", "United States"]

map0 = Map("世界地图示例", width=1200, height=600)

map0.add("世界地图", attr, value, maptype="world",  is_visualmap=True, visual_text_color='#000')

map0.render(path="世界地图.html")

中国地图

from pyecharts import Map

province_distribution = {'河南': 45.23, '北京': 37.56, '河北': 21, '辽宁': 12, '江西': 6, '上海': 20, '安徽': 10, '江苏': 16, '湖南': 9,'浙江': 13, '海南': 2, '广东': 22, '湖北': 8, '黑龙江': 11, '澳门': 1, '陕西': 11, '四川': 7, '内蒙古': 3, '重庆': 3,'云南': 6, '贵州': 2, '吉林': 3, '山西': 12, '山东': 11, '福建': 4, '青海': 1, '天津': 1,'其他': 1}

provice = list(province_distribution.keys())

values = list(province_distribution.values())

map = Map("中国地图", '中国地图', width=1200, height=600)

map.add("", provice, values, visual_range=[0, 50], maptype='china', is_visualmap=True,visual_text_color='#000')

map.render(path="中国地图.html")

省市地图

from pyecharts import Map

map2 = Map("贵州地图", '贵州', width=1200, height=600)

city = ['贵阳市', '六盘水市', '遵义市', '安顺市', '毕节市', '铜仁市', '黔西南布依族苗族自治州', '黔东南苗族侗族自治州', '黔南布依族苗族自治州']

values2 = [1.07, 3.85, 6.38, 8.21, 2.53, 4.37, 9.38, 4.29, 6.1]

map2.add('贵州', city, values2, visual_range=[1, 10], maptype='贵州', is_visualmap=True, visual_text_color='#000')

map2.render(path="贵州地图.html")

区县地图

from pyecharts import Map

quxian = ['观山湖区', '云岩区', '南明区', '花溪区', '乌当区', '白云区', '修文县', '息烽县', '开阳县', '清镇市']

values3 = [3, 5, 7, 8, 2, 4, 7, 8, 2, 4]

map3 = Map("贵阳地图", "贵阳", width=1200, height=600)

map3.add("贵阳", quxian, values3, visual_range=[1, 10], maptype='贵阳', is_visualmap=True)

map3.render(path="贵阳地图.html")

热力图

from pyecharts import Geo

keys = ['上海', '北京', '合肥', '哈尔滨', '广州', '成都', '无锡', '杭州', '武汉', '深圳', '西安', '郑州', '重庆', '长沙', '贵阳', '乌鲁木齐']

values = [4.07, 1.85, 4.38, 2.21, 3.53, 4.37, 1.38, 4.29, 4.1, 1.31, 3.92, 4.47, 2.40, 3.60, 1.2, 3.7]

geo = Geo("全国主要城市空气质量热力图", "data from pm2.5", title_color="#fff",title_pos="left",width=1200,height=600,background_color='#404a59')

geo.add("空气质量热力图", keys, values, visual_range=[0, 5], type='effectScatter',visual_text_color="#fff", symbol_size=15,is_visualmap=True, is_roam=True)  

# type有scatter, effectScatter, heatmap三种模式可选,可根据自己的需求选择对应的图表模式

geo.render(path="全国主要城市空气质量热力图.html")

pyEcharts安装及使用指南的更多相关文章

  1. pyEcharts安装及使用指南(最新)

    pyEcharts安装及使用指南(最新): 网上资料大多数是0.5X的版本, 这里我给出我的0.5版本连接https://www.cnblogs.com/dgwblog/p/11811562.html ...

  2. 在 Windows 上安装Rabbit MQ 指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  3. P6 EPPM 安装与配置指南 16 R1 2016.4

       关于安装和 配置P6 EPPM 本指南告诉你如何自动 安装和配置您的应用程序. 在您开始之前,阅读 先决条件 P6 EPPM配置 (7页). 安装P6 EPPM 您将使用 安装程序 (窗口) . ...

  4. P6 EPPM 16.1 安装和配置指南 1

    安装和配置指南下一topiccontents这些指南解释如何安装和配置数据库服务器,和P6 EPPM,模块:他们还提供在P6 EPPM能够解决所有模块的概述.标准指南帮助您配置和部署应用程序向导P6 ...

  5. P6 EPPM R16.1安装与配置指南(三)

    P6 EPPM R16.1安装与配置指南(三) 解压:V137390-01.zip 修改 D:\P6_R161\p6suite\database\dbsetup.bat   的行 SET JAR_FI ...

  6. P6 EPPM R16.1安装与配置指南(二)

    P6 EPPM R16.1安装与配置指南(一) http://www.cnblogs.com/endv/p/5634620.html P6 EPPM R16.1安装与配置指南(二) 环境变量配置 新建 ...

  7. P6 EPPM R16.1安装与配置指南(一)

    标题 http://www.cnblogs.com/endv/p/5634620.html 安装与配置指南安装与配置指南(数据库)说明哪些How to set up the P6专业数据库和服务器.a ...

  8. Cadence仿真利器,Cadence SI / PI Analysis – Sigrity安装及破解指南

    Sigrity提供了丰富的千兆比特信号与电源网络分析技术,包括面向系统.印刷电路板(PCB)和IC封装设计的独特的考虑电源影响的信号完整性分析功能. Sigrity分析技术与Cadence Alleg ...

  9. (转)在 Windows 上安装Rabbit MQ 指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

随机推荐

  1. Mariadb 基于Mycat实现读写分离

    环境:Mariadb主:192.168.200.129 Mariadb从:192.168.200.114 Mycat    :192.168.200.112 (1)      安装jdk,先查看本机是 ...

  2. 【TencentOS tiny】深度源码分析(3)——队列

    队列基本概念 队列是一种常用于任务间通信的数据结构,队列可以在任务与任务间.中断和任务间传递消息,实现了任务接收来自其他任务或中断的不固定长度的消息,任务能够从队列里面读取消息,当队列中的消息是空时, ...

  3. MFC底层窗口实现

    简要说明 MFC是微软的一个基础类库,如果在Windows平台上做GUI的开发,这是一个不错的选择.简单的记录MFC学习过程中的需要掌握或者后期需要查看的知识点. Windows消息机制 操作系统首先 ...

  4. 2. SOFAJRaft源码分析—JRaft的定时任务调度器是怎么做的?

    看完这个实现之后,感觉还是要多看源码,多研究.其实JRaft的定时任务调度器是基于Netty的时间轮来做的,如果没有看过Netty的源码,很可能并不知道时间轮算法,也就很难想到要去使用这么优秀的定时调 ...

  5. 张高兴的 .NET Core IoT 入门指南:(五)串口通信入门

    在开始之前,首先要说明的是串口通信所用到的 SerialPort 类并不包含在 System.Device.Gpio NuGet 包中,而是在 System.IO.Ports NuGet 包中.之所以 ...

  6. 为什么要实现 IDisposable 接口?

    一.背景 最近在精读 <CLR Via C#>和 <Effective C#> 的时候,发现的一个问题点.一般来说,我们实现 IDisposable 接口,是为了释放托管资源和 ...

  7. (已解决)STM32L151使用串口发送数据第一字节为FE问题!

    最近学习到串口发送数据时遇到一个问题:第一个字节总是FE,后面才是对的数据. 最终解决的方法是: 讲GPIO复用的操作放到GPIO配置之前! 体现在代码中就是: //打开GPIO时钟 RCC_AHBP ...

  8. 代码审计-phpcms9任意文件读取

    漏洞文件: /phpcms/modules/content/down.php download函数 这个函数开始几行代码的作用和init函数中的几乎一样,都是从parse_str 解析传入的a_k参数 ...

  9. PHP 插入排序 -- 希尔排序

    1.希尔排序 -- Shell Insertion Sort 时间复杂度:数学家正在勤劳的探索! 适用条件: 直接插入排序的改进,主要针对移动次数的减少,这取决于"增量队列"的取值 ...

  10. ubuntu16.04安装zlib

    sudo apt-get install zlib1g-dev 下载:libzip-1.0.1.tar.gztar zxcv libzip-1.0.1.tar.gzcd libzip-1.0.1./c ...