我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python数据可视化Pyecharts库的使用教程

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python数据可视化Pyecharts库的使用教程

一、Pyecharts 概述

Pyechart 是一个用于生成 Echarts 图表(Echarts 是基于 Javascript 的开源可视化图表库)的 Python 第三方库。

1.1 Pyecharts 特性

根据官方文档的介绍,Pyecharts 的特性如下:

1.简洁的 API 设计,使用如丝滑般流畅,支持链式调用

2.包含了 30+ 种常见图表,应有尽有

3.支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab

4.可轻松集成至 Flask,Django 等主流 Web 框架

5.高度灵活的配置项,可轻松搭配出精美的图表

6.详细的文档和示例,帮助开发者更快的上手项目

7.多达 400+ 地图文件及原生的百度地图,为地理数据可视化提供强有力的支持

Pyecharts 官网链接:https://pyecharts.org/#/

1.2 Pyecharts 入门案例

1.2.1 安装 Pyecharts

# 通过 pip 安装 Pyecharts
$ pip install pyecharts

# 安装完成后可以通过以下命令检查 Pyecharts 是否安装成功
$ pip list

1.2.2 Pyecharts 入门案例

from pyecharts.charts import Bar

# v1 版本开始支持链式调用
bar = (
    Bar()
    .add_xaxis(['衬衫', '毛衣', '裤子'])
    .add_yaxis('商家A', [10, 20, 30])
    .add_yaxis('商家B', [30, 20, 10])
)

# render 会生成本地 html 文件,默认当前目录,且文件名称为 render.html
# 同样也可以传入参数,例如:bar.render('mycharts.html')
bar.render()

运行上述程序,会在当前 .py 文件目录下生成一个 render.html,打开 render.html,展示的柱状图如下:

二、Pyecharts 配置项

Pyecharts 的配置项分为全局配置项、系列配置项,通过这些配置项,可以对 charts 图中的展示内容进行自定义。

2.1 全局配置项

全局配置可以通过 set_global_opts 方法进行设置,如下图,可以通过全局配置项,自定义charts 图的、图例、提示框、工具箱等展示内容。

2.1.1 全局配置项的使用

全局配置项的使用基本大致相同,因此,以 TitleOpts 设置项为例,详细介绍一下如何去使用这些设置项,首先,通过官方文档的介绍,可以基本知道 TitleOpts 支持的设置项有哪些:

class TitleOpts(
    # 主文本,支持使用 \n 换行。
    title: Optional[str] = None,

    # 主跳转 URL 链接
    title_link: Optional[str] = None,

    # 主跳转链接方式
    # 默认值是: blank
    # 可选参数: 'self', 'blank'
    # 'self' 当前窗口打开; 'blank' 新窗口打开
    title_target: Optional[str] = None,

    # 副文本,支持使用 \n 换行。
    subtitle: Optional[str] = None,

    # 副跳转 URL 链接
    subtitle_link: Optional[str] = None,

    # 副跳转链接方式
    # 默认值是: blank
    # 可选参数: 'self', 'blank'
    # 'self' 当前窗口打开; 'blank' 新窗口打开
    subtitle_target: Optional[str] = None,

    # title 组件离容器左侧的距离。
    # left 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比,
    # 也可以是 'left', 'center', 'right'。
    # 如果 left 的值为'left', 'center', 'right',组件会根据相应的位置自动对齐。
    pos_left: Optional[str] = None,

    # title 组件离容器右侧的距离。
    # right 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比。
    pos_right: Optional[str] = None,

    # title 组件离容器上侧的距离。
    # top 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比,
    # 也可以是 'top', 'middle', 'bottom'。
    # 如果 top 的值为'top', 'middle', 'bottom',组件会根据相应的位置自动对齐。
    pos_top: Optional[str] = None,

    # title 组件离容器下侧的距离。
    # bottom 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比。
    pos_bottom: Optional[str] = None,

    # 内边距,单位px,默认各方向内边距为5,接受数组分别设定上右下左边距。
    # // 设置内边距为 5
    # padding: 5
    # // 设置上下的内边距为 5,左右的内边距为 10
    # padding: [5, 10]
    # // 分别设置四个方向的内边距
    # padding: [
    #     5,  // 上
    #     10, // 右
    #     5,  // 下
    #     10, // 左
    # ]
    padding: Union[Sequence, Numeric] = 5,

    # 主副之间的间距。
    item_gap: Numeric = 10,

    # 主字体样式配置项,参考 `series_options.TextStyleOpts`
    title_textstyle_opts: Union[TextStyleOpts, dict, None] = None,

    # 副字体样式配置项,参考 `series_options.TextStyleOpts`
    subtitle_textstyle_opts: Union[TextStyleOpts, dict, None] = None,
)

而前面有说到,全局配置项是通过 set_global_opts 进行设置,也就是说,在调用 set_global_opts 时,只需要在其入参中添加上 title_opts,就可以针对 charts 图进行一些的自定义,set_global_opts 相关源码及相关案例如下:

def set_global_opts(
    self,
    title_opts: types.Title = opts.TitleOpts(),
    legend_opts: types.Legend = opts.LegendOpts(),
    tooltip_opts: types.Tooltip = None,
    toolbox_opts: types.Toolbox = None,
    brush_opts: types.Brush = None,
    xaxis_opts: types.Axis = None,
    yaxis_opts: types.Axis = None,
    visualmap_opts: types.VisualMap = None,
    datazoom_opts: types.DataZoom = None,
    graphic_opts: types.Graphic = None,
    axispointer_opts: types.AxisPointer = None,
):
from pyecharts.charts import Bar
from pyecharts import options as opts

bar = (
    Bar()
    .add_xaxis(['衬衫', '毛衣', '裤子'])
    .add_yaxis('商家A', [10, 20, 30])
    .add_yaxis('商家B', [30, 20, 10])
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title='This is title'
        )
    )
)

bar.render()

2.1.2 全局配置项使用总结

  • 在调用 set_global_opts 时,可以追加相应的全局配置项,支持的全局配置项可以参考 set_global_opts 源码。
  • 可以通过官方文档或者查看源码去了解这些全局配置项都支持哪些入参,同样也可以通过源码入手。
  • 注意入参的数据类型,并不是所有全局配置项的入参都是 str 类型。

2.2 系列配置项

系列配置可以通过 set_series_opts 方法进行设置,通过系列配置项,可以对文字、图元等样式进行配置。

2.2.1 系列配置项的使用

以 ItemStyleOpts 图元设置项为例,同样可以通过官方文档的介绍,可以基本知道 ItemStyleOpts 支持的设置项有哪些:

class ItemStyleOpts(
    # 图形的颜色。
    # 颜色可以使用 RGB 表示,比如 'rgb(128, 128, 128)',如果想要加上 alpha 通道表示不透明度,
    # 可以使用 RGBA,比如 'rgba(128, 128, 128, 0.5)',也可以使用十六进制格式,比如 '#ccc'。
    # 除了纯色之外颜色也支持渐变色和纹理填充
    # 
    # 线性渐变,前四个参数分别是 x0, y0, x2, y2, 范围从 0 - 1,相当于在图形包围盒中的百分比,
    # 如果 globalCoord 为 `true`,则该四个值是绝对的像素位置
    # color: {
    #    type: 'linear',
    #    x: 0,
    #    y: 0,
    #    x2: 0,
    #    y2: 1,
    #    colorStops: [{
    #        offset: 0, color: 'red' // 0% 处的颜色
    #    }, {
    #        offset: 1, color: 'blue' // 100% 处的颜色
    #    }],
    #    global: false // 缺省为 false
    # }
    # 
    # 径向渐变,前三个参数分别是圆心 x, y 和半径,取值同线性渐变
    # color: {
    #    type: 'radial',
    #    x: 0.5,
    #    y: 0.5,
    #    r: 0.5,
    #    colorStops: [{
    #        offset: 0, color: 'red' // 0% 处的颜色
    #    }, {
    #        offset: 1, color: 'blue' // 100% 处的颜色
    #    }],
    #    global: false // 缺省为 false
    # }
    # 
    # 纹理填充
    # color: {
    #    image: imageDom, // 支持为 HTMLImageElement, HTMLCanvasElement,不支持路径字符串
    #    repeat: 'repeat' // 是否平铺, 可以是 'repeat-x', 'repeat-y', 'no-repeat'
    # }
    color: Optional[str] = None,

    # 阴线 图形的颜色。
    color0: Optional[str] = None,

    # 图形的描边颜色。支持的颜色格式同 color,不支持回调函数。
    border_color: Optional[str] = None,

    # 阴线 图形的描边颜色。
    border_color0: Optional[str] = None,

    # 描边宽度,默认不描边。
    border_width: Optional[Numeric] = None,

    # 支持 'dashed', 'dotted'。
    border_type: Optional[str] = None,

    # 图形透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形。
    opacity: Optional[Numeric] = None,

    # 区域的颜色。    
    area_color: Optional[str] = None,
)

具体使用方式如下:

from pyecharts.charts import Bar
from pyecharts import options as opts

bar = (
    Bar()
    .add_xaxis(['衬衫', '毛衣', '裤子'])
    .add_yaxis('商家A', [10, 20, 30])
    .add_yaxis('商家B', [30, 20, 10])
    .set_series_opts(
        itemstyle_opts=opts.ItemStyleOpts(
            color='#0066FF'
        )
    )
)

bar.render()

在上面的 charts 图中可以看到,charts 图的颜色发生了变化,同样可以发现一个问题,就是每个系列的颜色都是相同的,这样的 charts 图可能并不符合我们的预期结果,既然是系列配置项,那么我们的关注点可以放到 add_yaxis 上,可以看到,该方法同样也是有一个 itemstyle_opts 入参的,因此,还可以进行如下方式的设置:

from pyecharts.charts import Bar
from pyecharts import options as opts

bar = (
    Bar()
    .add_xaxis(['衬衫', '毛衣', '裤子'])
    .add_yaxis('商家A', [10, 20, 30], itemstyle_opts=opts.ItemStyleOpts(color='#5edd55'))
    .add_yaxis('商家B', [30, 20, 10], itemstyle_opts=opts.ItemStyleOpts(color='#33c0eb'))
)

bar.render()

2.2.2 系列配置项使用总结

系列配置项的使用方式其实和全局配置项的使用方式基本相同:

  • 在调用 set_series_opts 时,可以追加相应的全局配置项,支持的全局配置项可以参考 set_series_opts 源码。
  • 可以通过官方文档或者查看源码去了解这些全局配置项都支持哪些入参,同样也可以通过源码入手。
  • 注意入参的数据类型,并不是所有全局配置项的入参都是 str 类型。
  • 系列配置项支持在 charts 图系列中进行追加。

三、Pyecharts 的总结

对于生成 charts 图,无非是两个步骤:1)获取数据,2)将数据生成 charts 图,而 pyecharts 关注的重点则在于第二步,在了解了 pyecharts 的全局配置项和系列配置项之后,可以说是基本掌握了 pyecharts 的使用,对于 pyecharts 其他类型的 charts 图不再进行演示,官方文档上都有详细的说明。

以上就是Python数据可视化Pyecharts库的使用教程的详细内容,更多关于Python Pyecharts库的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python数据可视化Pyecharts库的使用教程

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python数据可视化之Pyecharts如何使用

这篇“Python数据可视化之Pyecharts如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python数据可视化
2023-07-06

Python 数据可视化神器—Pyecharts

能否在 Python 中也能用到 Echarts 的功能呢?寻找中惊喜地发现了 pyecharts,只需在python中安装该模块即可使用。

Python数据可视化:使用pyecharts创建交互式图表

Pyecharts是一个强大的Python数据可视化工具,允许你创建各种类型的交互式图表。在本文中介绍了如何安装pyecharts,创建基本的折线图和柱状图,以及如何配置图表以满足特定的需求。

python用pyecharts实现地图数据可视化的方法

这篇文章给大家分享的是有关python用pyecharts实现地图数据可视化的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。有的时候,我们需要对不同国家或地区的某项指标进行比较,可简单通过直方图加以比较。但直
2023-06-14

手把手教你用Pyecharts库对淘宝数据进行可视化展示

本文基于一份杂乱的淘宝原始数据,利用正则表达式re库和Pandas数据处理对数据进行清洗,然后通过stop_word停用词对得到的文本进行分词处理,得到较为”干净“的数据。

Python中seaborn库之countplot的数据可视化使用

在Python数据可视化中,seaborn较好的提供了图形的一些可视化功效。 seaborn官方文档见链接:http://seaborn.pydata.org/api.html countplot是seaborn库中分类图的一种,作用是使用
2022-06-02

怎么使用pyecharts绘制各种数据可视化图表

本篇内容介绍了“怎么使用pyecharts绘制各种数据可视化图表”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、pyecharts绘制饼图
2023-07-02

Python数据可视化库-Matplot

我们接着上次的继续讲解,先讲一个概念,叫子图的概念。我们先看一下这段代码import matplotlib.pyplot as pltfig = plt.figure()ax1 = fig.add_subplot(3,2,1)ax2 = f
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录