Pyecharts绘制条形图

前言

       条形图是一种把连续数据画成数据条的表现形式,通过比较不同组的条形长度,从而对比不同组的数据量大小。描绘条形图的要素有3个:组数、组宽度、祖限。绘制条形图时,不同组之间是由空隙的。条形用来比较两个或两个以上的价值(不同时间或者不同条件),只有一个变量,通常用于较小的数据集分析。条形图也可横向排列,或用多维方式表达。

绘制各门店服装销量比较条形图

       这里使用了Pyecharts库的faker模块的Faker对象伪造了两组服装销量数据。代码如下:

from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from pyecharts.faker import Fakerdef bar_base() -> Bar:c = (Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT)).add_xaxis(Faker.clothes).add_yaxis("门店A", Faker.values()).add_yaxis("门店B", Faker.values()).set_global_opts(title_opts=opts.TitleOpts(title="各门店服装销量比较条形图"),toolbox_opts=opts.ToolboxOpts(),legend_opts=opts.LegendOpts(is_show=True, pos_left='center', pos_top='top', item_width=25, item_height=25),xaxis_opts=opts.AxisOpts(name='门店', name_textstyle_opts=opts.TextStyleOpts(color='red', font_size=20),axislabel_opts=opts.LabelOpts(font_size=15, rotate=-15)),yaxis_opts=opts.AxisOpts(name='销量', name_textstyle_opts=opts.TextStyleOpts(color='red', font_size=20),axislabel_opts=opts.LabelOpts(font_size=15),name_location="middle")).set_series_opts(label_opts=opts.LabelOpts(is_show=True, position='top', color='black', font_size=15)))return c

        绘制的图形如下图所示:

 

绘制横向条形图

        绘制横向条形图非常简单,只需在添加完数据后加一行代码.reversal_axis()即可,示例代码如下:

from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from pyecharts.faker import Fakerdef bar_base() -> Bar:c = (Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT)).add_xaxis(Faker.clothes).add_yaxis("门店A", Faker.values()).add_yaxis("门店B", Faker.values()).reversal_axis().set_global_opts(title_opts=opts.TitleOpts(title="各门店服装销量比较条形图"),toolbox_opts=opts.ToolboxOpts(),legend_opts=opts.LegendOpts(is_show=True, pos_left='center', pos_top='top', item_width=25, item_height=25)))return c

         绘制的图形如下图所示:

绘制堆叠条形图 

        绘制堆叠条形图非常简单,只需要在添加数据时加上stack="stack1"即可,示例代码如下:

from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from pyecharts.faker import Fakerdef bar_base() -> Bar:c = (Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT)).add_xaxis(Faker.clothes).add_yaxis("门店A", Faker.values(), stack="stack1").add_yaxis("门店B", Faker.values(), stack="stack1").set_global_opts(title_opts=opts.TitleOpts(title="各门店服装销量比较条形图"),toolbox_opts=opts.ToolboxOpts(),legend_opts=opts.LegendOpts(is_show=True, pos_left='center', pos_top='top', item_width=25, item_height=25),xaxis_opts=opts.AxisOpts(name='门店', name_textstyle_opts=opts.TextStyleOpts(font_size=20),axislabel_opts=opts.LabelOpts(font_size=15, rotate=0)),yaxis_opts=opts.AxisOpts(name='销量', name_textstyle_opts=opts.TextStyleOpts(font_size=20),axislabel_opts=opts.LabelOpts(font_size=15),name_location="middle")).set_series_opts(label_opts=opts.LabelOpts(is_show=True, position='top', color='black', font_size=15)))return c

        图形效果如下图所示:

 

绘制条形折现组合图

        条形图和折线图组合图的实现,就是使用bar.overlap(line)的方法实现组合,注意折线图使用的x轴数据和条形图要一致,示例代码如下:

from pyecharts.charts import Bar, Line
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from pyecharts.faker import Fakerx_data = Faker.clothesdef bar_base() -> Bar:bar = (Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT)).add_xaxis(xaxis_data=x_data).add_yaxis("门店A", Faker.values()).add_yaxis("门店B", Faker.values()).set_global_opts(title_opts=opts.TitleOpts(title="各门店服装销量比较条形图"),legend_opts=opts.LegendOpts(is_show=True, pos_left='center', pos_top='top', item_width=25, item_height=25),xaxis_opts=opts.AxisOpts(name='门店', name_textstyle_opts=opts.TextStyleOpts(font_size=20),axislabel_opts=opts.LabelOpts(font_size=15, rotate=0)),yaxis_opts=opts.AxisOpts(name='销量', name_textstyle_opts=opts.TextStyleOpts(font_size=20),axislabel_opts=opts.LabelOpts(font_size=15),name_location="middle")).set_series_opts(label_opts=opts.LabelOpts(is_show=True, position='top', color='black', font_size=15)))line = (Line().add_xaxis(xaxis_data=x_data).add_yaxis("门店c", Faker.values(), symbol='circle', itemstyle_opts={"color": "red", "linewidth": 20},symbol_size=8))return bar.overlap(line)

        图形效果如图所示:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/295304.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Golang并发模型-Pipeline模型、Fan-in Fan-out模型

这段时间由于项目的需要,本人正在研究关于如何优雅的进行go的并发,以下是结合资料和视频的结果,文末会给出参考资料 Go语言的并发模型主要通过goroutine和channel实现,通过这个我们可以更有效地使用IO和CPU 这里我们围绕生成一个…

增强Java技能:使用OkHttp下载www.dianping.com信息

在这篇技术文章中,我们将探讨如何使用Java和OkHttp库来下载并解析www.dianping.com上的商家信息。我们的目标是获取商家名称、价格、评分和评论,并将这些数据存储到CSV文件中。此外,我们将使用爬虫代理来绕过任何潜在的IP限制,并实…

Set a Light 3D Studio:探索光影艺术的全新维度mac/win中文版

Set a Light 3D Studio 是一款领先的三维建模和渲染软件,它将设计师、艺术家和摄影师的创意想法转化为生动逼真的三维场景。这款软件以其强大的功能和直观的界面,成为行业内众多专业人士的首 选工具。 set.a.light 3D STUDIO中文版软件获取 在Set a Lig…

备战蓝桥杯---贪心刷题1

话不多说&#xff0c;直接看题&#xff1a; 本质是一个数学题&#xff1a; 我们令xi<0表示反方向传递&#xff0c;易得我们就是求每一个xi的绝对值之和min,我们令平均值为a爸。 易得约束条件&#xff1a; x1-x2a1-a,x2-x3a2-a..... 解得x1x1-0,x2x1-((n-1)*a-a2-...an)。…

火鸟门户系统—旅游度假模块

旅游度假 简介 旅游度假功能为用户提供一站式旅游度假服务&#xff0c;车站、酒店民宿、门票、跟团游、货运、签证等多个方面&#xff0c;满足用户多样化的旅游需求。 功能 订单&#xff1a;提供订单预订服务&#xff0c;用户可以根据自身需求选择合适的旅行产品。酒店民宿…

人工智能+的广泛应用,已渗透到生活的方方面面

引言 随着科技的不断进步和人工智能技术的快速发展&#xff0c;我们正处于一个人工智能时代。人工智能不仅仅是一种技术&#xff0c;更是一种革命性的变革力量&#xff0c;它正在以前所未有的方式改变着我们的生活和工作方式。 人工智能&#xff08;AI&#xff09;指的是人工…

C++算法补充---STL

这里写目录标题 CSTL容器字符串函数(string容器函数)字符串转字符 算法交换函数拿到容器或者数组的第一个最大&#xff08;小&#xff09;值元素的下标或者值排序函数求字符数组的有效长度atoi函数&#xff08;将字符串类型的数字转为真正的int型数字&#xff09;string转字符 …

mt7601 kernel 4.19内核版本使用iw,以及交叉编译后使用iwpriv

目录 内核自带 内核配置 移植 iw工具 移植mt7601源码 内核自带 内核配置 在linux内核4.19版本中已经把mt7601的驱动加入到内核源码中。 内核需要需要开启mac802.11 使用iwpriv 提示如下&#xff0c;iwpriv工具无法使用了&#xff0c;而iwconfig可以使用 /opt/ko # iwp…

数论与线性代数——整除分块【数论分块】的【运用】【思考】【讲解】【证明(作者自己证的QWQ)】

文章目录 整除分块的思考与运用整除分块的时间复杂度证明 & 分块数量整除分块的公式 & 公式证明公式证明 代码code↓ 整除分块的思考与运用 整除分块是为了解决一个整数求和问题 题目的问题为&#xff1a; ∑ i 1 n ⌊ n i ⌋ \sum_{i1}^{n} \left \lfloor \frac{n}{…

手写三维点云配准的迭代最近点(ICP)算法

在本篇博客中,主要深入研究迭代最近点(ICP)算法,特别是针对三维点云配准的实现。分析一个C++代码片段并解释其关键组成部分。(主要参考高博的ICP算法) 简介 ICP是计算机视觉和机器人领域广泛使用的技术,用于将两组三维点进行配准。其主要应用是将一组观测点与参考模型进…

在idea中使用sql语言提醒

1.Settings中设置 2. 配置好数据库名字 3. altenter 注入方言 注入后是下面这样

Linux:冯·诺依曼结构 OS管理机制

Linux&#xff1a;冯诺依曼结构 & OS管理机制 冯诺依曼结构OS管理机制OS对下层硬件的管理OS对上层用户的服务 冯诺依曼结构 我们常见的计算机&#xff0c;比如笔记本&#xff0c;台式电脑。以及一下不常见的计算机&#xff0c;比如服务器&#xff0c;几乎都遵循冯诺依曼体…

如何理解Java注解反射

Java 8 中文版 - 在线API手册 - 码工具 什么是注解 ◆Annotation是从JDK5.0开始引入的新技术 ◆Annotation的作用: 不是程序本身&#xff0c;可以对程序作出解释.(这一点和注释(comment)没什么区别) 可以被其他程序(比如:编译器等)读取 Annotation的格式: > 注解是以&quo…

redis 的StringRedisTemplate

6.3 StringRedisTemplate 尽管JSON的序列化方式可以满足我们的需求&#xff0c;但依然存在一些问题&#xff0c;如图&#xff1a; 为了在反序列化时知道对象的类型&#xff0c;JSON序列化器会将类的class类型写入json结果中&#xff0c;存入Redis&#xff0c;会带来额外的内存…

ES8 学习 -- async 和 await / 对象方法扩展 / 字符串填充

文章目录 1. async 和 await1.1 基本语法1.2 使用示例1.3 案例练习 2. 对象方法扩展2.1 Object.values(obj)2.2 Object.entries(obj)2.3 Object.getOwnPropertyDescriptors(obj)使用示例 3. 字符串填充4. 函数参数的末尾加逗号 1. async 和 await async 函数&#xff0c;使得异…

JavaScript 设计模式之代理模式

代理模式&#xff0c;代理&#xff08;proxy&#xff09;是一个对象&#xff0c;它可以用来控制对另一个对象的访问。 现在页面上有一个香港回归最想听的金典曲目列表&#xff1a; <ul id"container"><li>我的中国心</li><li>东方之珠<…

Photoshop 2024 Mac/win---图像处理的新纪元,解锁无限创意

Photoshop 2024是一款功能强大的图像处理软件&#xff0c;以其卓越的性能和广泛的应用领域&#xff0c;赢得了设计师、摄影师、图形艺术家等各类创意工作者的青睐。它提供了丰富的绘画和编辑工具&#xff0c;让用户能够轻松进行图片编辑、合成、校色、抠图等操作&#xff0c;实…

Redis缓存设计与性能优化【缓存和数据库不一致问题,解决方案:1.加过期时间这样可以一段时间后自动刷新 2.分布式的读写锁】

Redis缓存设计与性能优化 缓存与数据库双写不一致 缓存与数据库双写不一致 在大并发下&#xff0c;同时操作数据库与缓存会存在数据不一致性问题 1、双写不一致情况 2、读写并发不一致 解决方案&#xff1a; 1、对于并发几率很小的数据(如个人维度的订单数据、用户数据等)&a…

LabelConvert: 目标检测和图像分割数据集格式转换工具

LabelConvert LabelConvert是一个目标检测和图像分割的数据集格式转换工具&#xff0c;支持labelme、labelImg与YOLO、VOC和COCO 数据集格式之间的相互转换。 支持的转换格式 安装 pip install label_convert具体使用方法 由于文章篇幅所限&#xff0c;请移步LabelConvert官…

算法学习——LeetCode力扣动态规划篇8(300. 最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组、1143. 最长公共子序列)

算法学习——LeetCode力扣动态规划篇8 300. 最长递增子序列 300. 最长递增子序列 - 力扣&#xff08;LeetCode&#xff09; 描述 给你一个整数数组 nums &#xff0c;找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列&#xff0c;删除&#xff08;或不删…