【Python】pyecharts 模块 ⑥ ( 绘制柱状图 | pyecharts 绘制柱状图步骤 | 柱状图 x 轴 / y 轴 翻转 | 柱状图数据标签位置设置 )

2023-07-23 21:18:17


pyecharts 画廊网站 : https://gallery.pyecharts.org/#/

  • 在该网站可查看官方示例




一、pyecharts 绘制基础柱状图




1、pyecharts 绘制柱状图步骤


首先 , 导入 柱状图 Bar 类 , 该类定义在 pyecharts.charts 模块中 ;

# 导入 pyecharts 模块中的 柱状图 Bar 类
from pyecharts.charts import Bar

然后 , 创建 柱状图 Bar 类型 实例对象 , 该对象代表了一个柱状图 ;

# 创建柱状图对象
bar = Bar()

再后 , 设置该 柱状图的 x 轴 和 y 轴数据 ,

  • 调用 Bar#add_xaxis() 函数 , 设置 x 轴数据 , 实际数据放在 列表 中 , 作为参数传递给该函数 ;
  • 调用 Bar#add_yaxis() 函数 , 设置 y 轴数据 , 第一个参数是柱状图标题 , 第二个参数 是 列表类型的容器变量 , 表示 y 轴的数据 ;
# 设置 x 轴数据
bar.add_xaxis(["河北", "河南", "山东", "山西"])

# 设置 y 轴数据
bar.add_yaxis("GDP", [40391, 58887, 82875, 22870])

最后 , 调用 Bar#render() 函数 , 生成最终的柱状图 ;

# 生成柱状图
bar.render()

在 该 源码 的 同级目录下 , 生成的 render.html 就是生成的 柱状图 ;

在这里插入图片描述


2、代码示例 - pyecharts 绘制柱状图


代码示例 :

"""
pyecharts 模块
"""

# 导入 pyecharts 模块中的 柱状图 Bar 类
from pyecharts.charts import Bar

# 导入 配置 相关类
from pyecharts.options import *

# 创建柱状图对象
bar = Bar()

# 设置 x 轴数据
bar.add_xaxis(["河北", "河南", "山东", "山西"])

# 设置 y 轴数据
bar.add_yaxis("GDP", [40391, 58887, 82875, 22870])

# 生成柱状图
bar.render()

执行结果 :

在这里插入图片描述

生成的 render.html 如下 ( 仅做参考 - 没事别点开 ) :

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Awesome-pyecharts</title>
                <script type="text/javascript" src="https://assets.pyecharts.org/assets/v5/echarts.min.js"></script>

</head>
<body >
    <div id="cefd15ca8045443380ca43cf4b559bc1" class="chart-container" style="width:900px; height:500px; "></div>
    <script>
        var chart_cefd15ca8045443380ca43cf4b559bc1 = echarts.init(
            document.getElementById('cefd15ca8045443380ca43cf4b559bc1'), 'white', {renderer: 'canvas'});
        var option_cefd15ca8045443380ca43cf4b559bc1 = {
    "animation": true,
    "animationThreshold": 2000,
    "animationDuration": 1000,
    "animationEasing": "cubicOut",
    "animationDelay": 0,
    "animationDurationUpdate": 300,
    "animationEasingUpdate": "cubicOut",
    "animationDelayUpdate": 0,
    "aria": {
        "enabled": false
    },
    "color": [
        "#5470c6",
        "#91cc75",
        "#fac858",
        "#ee6666",
        "#73c0de",
        "#3ba272",
        "#fc8452",
        "#9a60b4",
        "#ea7ccc"
    ],
    "series": [
        {
            "type": "bar",
            "name": "GDP",
            "legendHoverLink": true,
            "data": [
                40391,
                58887,
                82875,
                22870
            ],
            "realtimeSort": false,
            "showBackground": false,
            "stackStrategy": "samesign",
            "cursor": "pointer",
            "barMinHeight": 0,
            "barCategoryGap": "20%",
            "barGap": "30%",
            "large": false,
            "largeThreshold": 400,
            "seriesLayoutBy": "column",
            "datasetIndex": 0,
            "clip": true,
            "zlevel": 0,
            "z": 2,
            "label": {
                "show": true,
                "margin": 8
            }
        }
    ],
    "legend": [
        {
            "data": [
                "GDP"
            ],
            "selected": {}
        }
    ],
    "tooltip": {
        "show": true,
        "trigger": "item",
        "triggerOn": "mousemove|click",
        "axisPointer": {
            "type": "line"
        },
        "showContent": true,
        "alwaysShowContent": false,
        "showDelay": 0,
        "hideDelay": 100,
        "enterable": false,
        "confine": false,
        "appendToBody": false,
        "transitionDuration": 0.4,
        "textStyle": {
            "fontSize": 14
        },
        "borderWidth": 0,
        "padding": 5,
        "order": "seriesAsc"
    },
    "xAxis": [
        {
            "show": true,
            "scale": false,
            "nameLocation": "end",
            "nameGap": 15,
            "gridIndex": 0,
            "inverse": false,
            "offset": 0,
            "splitNumber": 5,
            "minInterval": 0,
            "splitLine": {
                "show": true,
                "lineStyle": {
                    "show": true,
                    "width": 1,
                    "opacity": 1,
                    "curveness": 0,
                    "type": "solid"
                }
            },
            "data": [
                "\u6cb3\u5317",
                "\u6cb3\u5357",
                "\u5c71\u4e1c",
                "\u5c71\u897f"
            ]
        }
    ],
    "yAxis": [
        {
            "show": true,
            "scale": false,
            "nameLocation": "end",
            "nameGap": 15,
            "gridIndex": 0,
            "inverse": false,
            "offset": 0,
            "splitNumber": 5,
            "minInterval": 0,
            "splitLine": {
                "show": true,
                "lineStyle": {
                    "show": true,
                    "width": 1,
                    "opacity": 1,
                    "curveness": 0,
                    "type": "solid"
                }
            }
        }
    ]
};
        chart_cefd15ca8045443380ca43cf4b559bc1.setOption(option_cefd15ca8045443380ca43cf4b559bc1);
    </script>
</body>
</html>

柱状图效果如下 :

在这里插入图片描述





二、柱状图其它设置




1、柱状图 x 轴 / y 轴 翻转


调用 Bar#reversal_axis() 函数 , 可以翻转 柱状图 的 x 轴 和 y 轴 ;


代码示例 :

"""
pyecharts 模块
"""

# 导入 pyecharts 模块中的 柱状图 Bar 类
from pyecharts.charts import Bar

# 导入 配置 相关类
from pyecharts.options import *

# 创建柱状图对象
bar = Bar()

# 设置 x 轴数据
bar.add_xaxis(["河北", "河南", "山东", "山西"])

# 设置 y 轴数据
bar.add_yaxis("GDP", [40391, 58887, 82875, 22870])

# 翻转 x 轴 / y 轴
bar.reversal_axis()

# 生成柱状图
bar.render()

打开运行后生成的 render.html 网页 , 效果如下 :

在这里插入图片描述


2、柱状图数据标签位置设置


上面的柱状图的 数值标签 都在柱子 的中心位置显示 , 这是默认显示位置 ;

在这里插入图片描述


如果我们想要让 数值数据 显示在最右侧 , 在添加 y 轴数据时 , 为其设置一个 LabelOpts 参数 ;

# 设置 y 轴数据
bar.add_yaxis("GDP", [40391, 58887, 82875, 22870],
              label_opts=LabelOpts(position="right"))

完整代码示例 :

"""
pyecharts 模块
"""

# 导入 pyecharts 模块中的 柱状图 Bar 类
from pyecharts.charts import Bar

# 导入 配置 相关类
from pyecharts.options import *

# 创建柱状图对象
bar = Bar()

# 设置 x 轴数据
bar.add_xaxis(["河北", "河南", "山东", "山西"])

# 设置 y 轴数据
bar.add_yaxis("GDP", [40391, 58887, 82875, 22870],
              label_opts=LabelOpts(position="right"))

# 翻转 x 轴 / y 轴
bar.reversal_axis()

# 生成柱状图
bar.render()


render.html 网页显示效果 : 数值都在柱状数据的右侧显示 ;

在这里插入图片描述

更多推荐

Canal 实现MySQL与Elasticsearch7数据同步

1工作原理canal模拟MySQLslave的交互协议,伪装自己为MySQLslave,向MySQLmaster发送dump协议MySQLmaster收到dump请求,开始推送binarylog给slave(即canal)canal解析binarylog对象(原始为byte流)优点:可以完全和业务代码解耦,增量日志订阅

百度APP iOS端包体积50M优化实践(六)无用方法清理

一、前言百度APP包体积经过一期优化,如无用资源清理,无用类下线,Xcode编译相关优化,体积已经有了明显的减少。但是优化后APP包体积在iPhone11上仍有350M的空间占用。与此同时百度APP作为百度的旗舰APP,业务迭代非常多且迅速,体积优化和防劣化仍然是当前阶段的一个核心任务。因此百度APP开启了粒度更小,修

php生成二维码合成文字、背景图并保存本地图片

目录1、实现效果,二维码二维码合成文字、背景图2、下载并引入qrcode3、创建static文件夹下载字体和背景图到这4、创建test2.php,合成代码1、实现效果,二维码二维码合成文字、背景图2、下载并引入qrcode1、到phpqrcpde官网下载类库,官网地址:http://phpqrcode.sourcefo

【错误记录】IntelliJ IDEA 打包包含依赖库的 Jar 包执行报错 ( Invalid signature file digest for Manifest main attribute )

文章目录一、报错信息二、解决方案博客总结:核心报错信息如下:Error:AJNIerrorhasoccurred,pleasecheckyourinstallationandtryagainExceptioninthread“main”java.lang.SecurityException:Invalidsignatu

mmap使用测试

mmap使用测试Linux系统调用mmap()api说明,这个系统函数在频繁读写文件是很高效。mmap在调用进程内开辟一块内存空间,将文件(或文件部分)内容映射到调用的进程的虚拟空间中。进程通过操作这块mmap开辟的虚拟内存,就相当于直接操作文件本身了,其余的细节都由kernel,cpu中的mcu负责完成。这样与传统的

【LeetCode每日一题】——面试题10.11.峰与谷

文章目录一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】一【题目类别】排序二【题目难度】中等三【题目编号】面试题10.11.峰与谷四【题目描述】在一个整数数组中,“峰”是大于或等于相邻整数的元素,相应地,“谷”是小于或等于相邻整

io概述及其分类

一、IO概念•I/O即输入Input/输出Output的缩写,其实就是计算机调度把各个存储中(包括内存和外部存储)的数据写入写出的过程;I:InputO:Output通过IO可以完成硬盘文件的读和写。•java中用“流(stream)”来抽象表示这么一个写入写出的功能,封装成一个“类”,都放在http://java.i

PyTorch深度学习实战(13)——可视化神经网络中间层输出

PyTorch深度学习实战(13)——可视化神经网络中间层输出0.前言1.可视化特征学习的结果2.可视化第一个卷积层的输出3.可视化不同网络层的特征图小结系列链接0.前言随着深度学习的快速发展,神经网络已成为解决各种复杂任务的重要工具。然而,神经网络的黑盒特性使得我们对其内部运作过程和学到的表示仍然不够了解。为了更好地

spring并发读写数据库

spring并发读写数据库多线程写入数据库,事物通过AOP控制,无需影响业务代码存在几个小问题还不太理解有大佬看懂了麻烦点拨一下有好的优化代码思路欢迎交流代码当前仓库不能公开,代码下载文章目录spring并发读写数据库待解决问题基础实现原理单独任务实现通过AOP抽离事物控制的代码待解决问题//如果executor出现问

如何优化网站排名(百度SEO指南与优化布局方法)

百度SEO指南介绍:蘑菇号-www.mooogu.cn首先,为了提高网站的搜索引擎优化排名,需要遵循百度SEO指南的规则和标准。这包括使用符合规范的网站结构、页面内容的质量和与目标用户相关的关键词。避免使用非法技术和黑帽SEO的方法。增加百度SEO外链的四个步骤:第一步是寻找优质外链,例如与行业相关的网站、新闻媒体和知

kafkaStream实时流式计算

2实时流式计算2.1概念一般流式计算会与批量计算相比较。在流式计算模型中,输入是持续的,可以认为在时间上是无界的,也就意味着,永远拿不到全量数据去做计算。同时,计算结果是持续输出的,也即计算结果在时间上也是无界的。流式计算一般对实时性要求较高,同时一般是先定义目标计算,然后数据到来之后将计算逻辑应用于数据。同时为了提高

热文推荐