python可视化pyecharts

简单介绍

pyecharts 是一个用于生成 Echarts 图表的类库。Echarts 是百度开源的一个数据可视化 JS 库。用 Echarts 生成的图可视化效果非常棒,为了与 Python 进行对接,方便在 Python 中直接使用数据生成图。

echartsjs首页:https://www.echartsjs.com/index.html

pyecharts首页:http://pyecharts.herokuapp.com/

代码仓库:https://gallery.pyecharts.org/#/

pyecharts 分为 v0.5.X 和 v1 两个大版本,v0.5.X 和 v1 间不兼容,v1 是一个全新的版本。

v0.5.X版本地址

v1 版本地址

渲染图表

安装 pyecharts

pip 安装

$ pip install pyecharts

源码安装

$ git clone https://github.com/pyecharts/pyecharts.git

$ cd pyecharts

$ pip install-r requirements.txt

$ python setup.py install

兼容性注意

pyecharts 支持 Python2.7+ 和 Ptyhon3.5+。如果你使用的是 Python2.7,请在代码顶部声明字符编码,否则会出现中文乱码问题。

#coding=utf-8

from __future__ import unicode_literals

注意

快速开始

首先开始来绘制你的第一个图表

frompyecharts import Bar

bar= Bar("我的第一个图表", "这里是副标题")

bar.add("服装", ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"], [5, 20, 36, 10, 75, 90])

# bar.print_echarts_options() # 该行只为了打印配置项,方便调试时使用

bar.render() # 生成本地 HTML 文件

运行程序报错

报错信息

ERROR:lml.utils:failed to import pyecharts_snapshot

Traceback (most recent call last):

File"D:\Envs\mytest\lib\site-packages\lml\utils.py", line 43, indo_import

plugin_module=__import__(plugin_module_name)

ModuleNotFoundError: No module named'pyecharts_snapshot'原因:缺少这个依赖包

解决办法

pip install pyecharts-snapshot

再次运行程序,程序执行成功会在同级目录下生成一个html文件

add()

主要方法,用于添加图表的数据和设置各种配置项

print_echarts_options()

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

render()

默认将会在根目录下生成一个 render.html 的文件,支持 path 参数,设置文件保存位置,如 render(r"e:\my_first_chart.html"),文件用浏览器打开。

Note: 可以按右边的下载按钮将图片下载到本地,如果想要提供更多实用工具按钮,请在 add() 中设置 is_more_utils 为 Truefrompyecharts import Bar

bar= Bar("我的第一个图表", "这里是副标题")

bar.add("服装",

["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"], [5, 20, 36, 10, 75, 90],

is_more_utils=True)

bar.render()

详解

使用主题

自 0.5.2+ 起,pyecharts 支持更换主体色系。下面是跟换为 'dark' 的例子:

importrandomfrom pyecharts importBar

X_AXIS= ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]

bar= Bar("我的第一个图表", "这里是副标题")

bar.use_theme("dark")

bar.add("商家A", X_AXIS, [random.randint(10, 100) for _ in range(6)])

bar.add("商家B", X_AXIS, [random.randint(10, 100) for _ in range(6)])

bar.add("商家C", X_AXIS, [random.randint(10, 100) for _ in range(6)])

bar.add("商家D", X_AXIS, [random.randint(10, 100) for _ in range(6)])

bar.render()

默认主题的效果,就是不设置主题的时候

如果我们要使用更多的主题,就需要安装echarts-themes-pypkg库,因为echarts 自带 dark 主题,pyecharts 也就自带了 dark。

echarts-themes-pypkg

vintage

macarons

infographic

shine

roma

westeros

wonderland

chalk

halloween

essos

walden

purple-passion

romantic

更多主题

安装主题插件

pip install echarts-themes-pypkg

使用主题

更换单个图形主题

bar.use_theme("vintage")

更换运行环境内所有图表主题from pyecharts importconfigure#将这行代码置于首部

configure(global_theme='dark')

bar=Bar()#其他代码

使用自己构建的主题

Echarts 提供了主题构建工具,你可以从中构建喜欢的主题,如 myTheme.js。然后 hack echarts-themes-pypkg 包。具体操作如下1.cd 到你 Python 安装环境下的 Lib/site-packages/echarts_themes_pypkg/resources 目录下,具体路径因操作系统而异2.将 myTheme.js 放入到 resources/echarts-themes-js 文件夹下3.改动 resources/registry.json 文件"PINYIN_MAP": {"shine": "shine",

..."myTheme": "myTheme" #这行

},"FILE_MAP": {"shine": "shine",

..."myTheme": "myTheme" #还有这行

}1.cd 到 notebook 安装环境下的 jupyter/nbextensions/echarts-themes-js 目录下,具体路径因操作系统而异2.将 myTheme.js 放入到 echarts-themes-js 文件夹下3.使用 chart.use_theme("myTheme")4、5 为可选项,如果不使用 notebook 的话可以忽略该步骤。

使用自己构建的主题

使用 pyecharts-snapshot 插件

如果想直接将图片保存为 png, pdf, gif 格式的文件,可以使用 pyecharts-snapshot。使用该插件请确保你的系统上已经安装了 Nodejs 环境。

安装 phantomjs $ npm install -g phantomjs-prebuilt

安装 pyecharts-snapshot $ pip install pyecharts-snapshot

调用 render 方法 bar.render(path='snapshot.png') 文件结尾可以为 svg/jpeg/png/pdf/gif。请注意,svg 文件需要你在初始化 bar 的时候设置 renderer='svg'。

图形绘制过程

图表类提供了若干了构建和渲染的方法,在使用的过程中,建议按照以下的顺序分别调用:

步骤描述代码示例备注

1

实例一个具体类型图表的对象

chart = FooChart()

2

为图表添加通用的配置,如主题

chart.use_theme()

3

为图表添加特定的配置

geo.add_coordinate()

4

添加数据及配置项

chart.add()

5

生成本地文件(html/svg/jpeg/png/pdf/gif)

chart.render()

从 v0.5.9 开始,以上涉及的方法均支持链式调用。例如:

from pyecharts importBar

CLOTHES= ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]

clothes_v1= [5, 20, 36, 10, 75, 90]

clothes_v2= [10, 25, 8, 60, 20, 80]

(Bar("柱状图数据堆叠示例")

.add("商家A", CLOTHES, clothes_v1, is_stack=True)

.add("商家B", CLOTHES, clothes_v2, is_stack=True)

.render())

多次显示图表

从 v0.4.0+ 开始,pyecharts 重构了渲染的内部逻辑,改善效率。推荐使用以下方式显示多个图表。

from pyecharts import Bar, Line

from pyecharts.engine import create_default_environment

bar = Bar("我的第一个图表", "这里是副标题")

bar.add("服装", ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"], [5, 20, 36, 10, 75, 90])

line = Line("我的第一个图表", "这里是副标题")

line.add("服装", ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"], [5, 20, 36, 10, 75, 90])

env = create_default_environment("html")

# 为渲染创建一个默认配置环境

# create_default_environment(filet_ype)

# file_type: 'html', 'svg', 'png', 'jpeg', 'gif' or 'pdf'

env.render_chart_to_file(bar, path='bar.html')

env.render_chart_to_file(line, path='line.html')

相比第一个例子,该代码只是使用同一个引擎对象,减少了部分重复操作,速度有所提高。

Pandas&Numpy 简单示例

如果使用的是 Numpy 或者 Pandas,可以参考这个示例

Note: 使用 Pandas&Numpy 时,整数类型请确保为 int,而不是 numpy.int32

当然你也可以采用更加酷炫的方式,使用 Jupyter Notebook 来展示图表,matplotlib 有的,pyecharts 也会有的

Note: 从 v0.1.9.2 版本开始,废弃 render_notebook() 方法,现已采用更加 pythonic 的做法。直接调用本身实例就可以了。

比如这样

还有这样

如果使用的是自定义类,直接调用自定义类示例即可

更多 Jupyter notebook 的例子请参考 notebook-use-cases。可下载后运行看看。

如需使用 Jupyter Notebook 来展示图表,只需要调用自身实例即可,同时兼容 Python2 和 Python3 的 Jupyter Notebook 环境。所有图表均可正常显示,与浏览器一致的交互体验,这下展示报告连 PPT 都省了!!

python可视化使用_python可视化pyecharts相关推荐

  1. python 可视化饼图_Python可视化学习(饼状图,坐标系...)

    写在前面的话 01 今天资源君带大家学习一下Python的可视化,何谓可视化呢?我们常常听说Python的数据分析,数据分析中很重要的一个就是将数据展示出来,如何展示出来呢?这就得靠我们的Python ...

  2. python可视化神器_python可视化神器——pyecharts库

    pyecharts是什么? pyecharts 是一个用于生成 Echarts 图表的类库.Echarts 是百度开源的一个数据可视化 JS 库.用 Echarts 生成的图可视化效果很是棒,pyec ...

  3. python颜色库_Python可视化_matplotlib08-palettable颜色库(四)

    本文细介绍python palettable颜色库种colormap使用. 本文将学到什么? 1. palettable中colormap名称 16大类 1587类 2. palettable中col ...

  4. python画相关性可视化图_Python可视化很简单,一文教你绘制饼图、极线图和气泡图...

    matplotlib库作为Python数据化可视化的最经典和最常用库,掌握了它就相当于学会了Python的数据化可视化,上次呢,已经和大家聊了关于柱状图.条形图和直方图相关的东东,相信大家已经掌握了哈 ...

  5. python polar函数_Python可视化很简单,可是你会吗?python绘制饼图、极线图和气泡图,让我来教教你吧,一文教会!!!...

    matplotlib库作为Python数据化可视化的最经典和最常用库,掌握了它就相当于学会了Python的数据化可视化,今天呢,咱们就一起来聊聊关于Python如何去绘制饼图.极线图和气泡图吧 好啦, ...

  6. python 竖线 绘图_Python可视化 | Seaborn5分钟入门(二)——barplot countplot

    Seaborn是基于matplotlib的Python可视化库. 它提供了一个高级界面来绘制有吸引力的统计图形.Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图 ...

  7. python text函数_python可视化text()函数使用详解

    python可视化text()函数使用详解 这篇文章主要介绍了python可视化text()函数使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考 ...

  8. python 节气计算_Python可视化-二十四节气与生日间隔天数统计

    作为日常可视化作品之一,今天分析一下自97年开始,60年内每次生日与春分.雨水两个节气的相隔天数,看看哪一年会有重合的运气. 立春,十二节令之首,旧称正月节:雨水,十二中气立始.立春后,继之雨水,东风 ...

  9. python画图颜色种类_Python可视化|matplotlib07-python colormap(颜色映射)(三)

    本篇详细介绍matplotlib内置的颜色条Colormap使用. 本文将学到什么? 1.colormap名称 2.colormap可视化 3.colormap使用方法 4.参考资料 更好的阅读体验请 ...

最新文章

  1. java crontab_(定时任务)crontab和cron 的用法
  2. 那些35岁的程序员都去哪了
  3. [CF/AT]各大网站网赛 体验部部长第一季度工作报告
  4. 第五节: Quartz.Net五大构件之Trigger的四大触发类
  5. .NET 靠开源再“出圈”!
  6. Javascript对象的方法赋值
  7. 一维码,二维码,com.google.zxing
  8. 计算机系统中文件命名的,你电脑上的文件命名规范吗
  9. scnaf使用格式化字符串%d接受小数的情况
  10. Jira Seraph 中的身份验证绕过漏洞(CVE-2022-0540)
  11. 如何解决苹果电脑键盘失灵的问题
  12. 通配符的匹配很全面, 但无法找到元素 ‘aop:aspectj-autoproxy‘ 的声明
  13. 摩拜显示服务器忙,摩拜崩了?用户扫了5辆都失败 摩拜称APP出现短时故障
  14. Java基础知识(十) 多线程
  15. 手机号和座机号正则表达式
  16. (个人)太极拳学习系统创新实训第一周(一)
  17. vpp与dpdk的关系
  18. python爬虫用urllib还是reques_Python爬虫之urllib.request库
  19. Beyond compare添加插件
  20. jxr怎么变成jpg_手机怎样把照片格式改为jpg

热门文章

  1. 复习vue笔记第一天
  2. tensor如何实现转置_PyTorch中的傅立叶卷积:通过FFT有效计算大核卷积的数学原理和代码实现...
  3. shell中正则表达式详解_Shell if中的正则表达式使用详解
  4. 宁波大学2020计算机技术复试线,宁波大学2020年考研复试分数线
  5. html5 replace,js replace 与replaceall实例用法详解
  6. oracle 添加默认值列,Oracle 11g增加列,并带默认值的新特性
  7. 修改服务器时间需要重启吗,云服务器需要定期重启吗
  8. linux主机查看CPU核数和主机型号
  9. SQLite_Android
  10. 基于JAVA+Servlet+JSP+MYSQL的运动会管理系统