前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pyecharts基本使用-上篇

pyecharts基本使用-上篇

作者头像
测试加
发布2022-03-24 16:15:59
1.8K0
发布2022-03-24 16:15:59
举报
文章被收录于专栏:用户4624600的专栏

背景

在日常工作中经常会跟一些数据打交道,比如bug归因分析、自动化测试数据、性能测试数据等等.如果是table表格展示数据不能更好的提供给我们优化分析的思路,往往我们都是会用图表的形式展示数据更直观,比如折线图、饼图、柱状图等等.

在python中几个常用的图表库如下:

•matplotlib•Pychart•Cairoplot•pyecharts

本文就介绍下pyecharts的基础使用,相对之前使用vue的时候要经常使用Echarts生成图表,另外前三个不太符合我的需求和使用习惯.

简介

Echarts是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts诞生了.

可以说pyecharts是python库封装了使用Echarts的使用,让使用者更简单.

代码语言:javascript
复制
https://pyecharts.org/#/

快速入门

demo代码下载

代码语言:javascript
复制
https://github.com/pyecharts/pyecharts/tree/master/test

如何安装

代码语言:javascript
复制
pip(3) install pyecharts

查看版本

代码语言:javascript
复制
import pyecharts

print(pyecharts.__version__)

第一图表

第一图表生成一个简单柱状图.

代码语言:javascript
复制
from pyecharts.charts import Bar

bar = Bar()
bar.add_xaxis(["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"])
bar.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
# render 会生成本地 HTML 文件,默认会在当前目录生成 render.html 文件
# 也可以传入路径参数,如 bar.render("mycharts.html")
bar.render()

默认会生成render.html文件

点击run打开文件.

在浏览器中打开一个柱状图.

分析第一图表

代码语言:javascript
复制
from pyecharts.charts import Bar 
# 导入图表

支持的图表如下:

代码语言:javascript
复制
bar = Bar()
# 初始化对象

Bar继承了RectChart

在RectChart中的构造参数中,可以设置相关参数

给图表设置主题

代码语言:javascript
复制
Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))

设置x轴参数

代码语言:javascript
复制
bar.add_xaxis(["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"])

sequence类型的参数,是一个可迭代对象.

设置y轴参数

代码语言:javascript
复制
bar.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])

y轴的输入参数相关多一些,series_name是展示的名字, y_axis也是sequence类型的参数,必须是int类型或者float类型.

渲染数据

代码语言:javascript
复制
bar.render()

默认输出是render.html文件,模版是simple_chart.html.

渲染代码逻辑

使用jinja2把数据渲染一个本地html文件

生成的报告使用echarts.min.js渲染数据

其他常见图表

单折线图

代码语言:javascript
复制
c = (
    Line()
        .add_xaxis(["A", "B", "C"])
        .add_yaxis("series0", [1, 2, 4])
)
c.render()

多折线图

代码语言:javascript
复制
c = (
    Line()
        .add_xaxis(["A", "B", "C"])
        .add_yaxis("series0", [1, 2, 4])
        .add_yaxis("series1", [2, 3, 6])
)
c.render()

饼图

代码语言:javascript
复制
from pyecharts import options as opts
from pyecharts.charts import Pie
from pyecharts.faker import Faker

c = (
    Pie()
        .add("", [list(z) for z in zip(Faker.choose(), Faker.values())])
        .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
c.render()

地图

代码语言:javascript
复制
c = Map().add(
    "商家A", [list(z) for z in zip(Faker.provinces, Faker.values())], "china"
)
c.render()

词云

代码语言:javascript
复制
from pyecharts.charts import WordCloud

words = [
    ("Sam S Club", 10000),
    ("Macys", 6181),
    ("Amy Schumer", 4386),
    ("Jurassic World", 4055),
    ("Charter Communications", 2467),
    ("Chick Fil A", 2244),
    ("Planet Fitness", 1868),
    ("Pitch Perfect", 1484),
]



c = WordCloud().add("", words, word_size_range=[20, 100])
c.render()

后续

下文(中篇)会介绍一下pyecharts的高阶使用,配置项、参数传递、Web 框架整合等.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-01-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试加 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 简介
  • 快速入门
    • demo代码下载
      • 如何安装
        • 查看版本
          • 第一图表
            • 分析第一图表
            • 其他常见图表
              • 单折线图
                • 多折线图
                  • 饼图
                    • 地图
                      • 词云
                      • 后续
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档