[图表]pyecharts模块-柱状图2

news/2024/12/5 8:15:00/

[图表]pyecharts模块-柱状图2

先来看代码:

from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.faker import Fakerx = Faker.dogs + Faker.animal
xlen = len(x)
y = []
for idx, item in enumerate(x):if idx <= xlen / 2:y.append(opts.BarItem(name=item,value=(idx + 1) * 10,itemstyle_opts=opts.ItemStyleOpts(color="#749f83"),))else:y.append(opts.BarItem(name=item,value=(xlen + 1 - idx) * 10,itemstyle_opts=opts.ItemStyleOpts(color="#d48265"),))c = (Bar().add_xaxis(x).add_yaxis("series0", y, category_gap=0, color=Faker.rand_color()).set_global_opts(title_opts=opts.TitleOpts(title="Bar-直方图(颜色区分)")).render("bar_histogram_color.html")
)

再来看结果:

在这里插入图片描述

再来看解析:

这段代码使用了Python中的pyecharts模块来创建一个柱状图,并通过Faker模块生成了一些假数据。

首先,导入了需要的模块:

  • opts:包含一些图表配置选项的模块
  • Bar:用于创建柱状图的类
  • Faker:用于生成假数据的类

接下来,使用Faker模块生成了一组假数据,将dogs列表和animal列表相加作为横坐标数据x

x = Faker.dogs + Faker.animal

然后,计算了横坐标数据的长度xlen

xlen = len(x)

接着,通过循环遍历横坐标数据x,根据索引和条件判断来生成纵坐标数据y

y = []
for idx, item in enumerate(x):if idx <= xlen / 2:y.append(opts.BarItem(name=item,value=(idx + 1) * 10,itemstyle_opts=opts.ItemStyleOpts(color="#749f83"),))else:y.append(opts.BarItem(name=item,value=(xlen + 1 - idx) * 10,itemstyle_opts=opts.ItemStyleOpts(color="#d48265"),))

在循环中,根据索引和条件判断,生成了不同的BarItem对象,并设置了不同的颜色。每个BarItem对象表示一个柱状图的柱子,其中包括了名称、值和样式等信息。

然后,创建了一个Bar对象,并使用add_xaxis方法添加横坐标数据:

c = (Bar().add_xaxis(x)...
)

接着,使用add_yaxis方法添加一个纵坐标系列,命名为"series0",并传入之前生成的纵坐标数据y

    .add_yaxis("series0", y, category_gap=0, color=Faker.rand_color())

在这里,设置了柱状图的颜色为随机颜色。

然后,使用set_global_opts方法设置全局选项,这里设置了图表的标题为"Bar-直方图(颜色区分)":

    .set_global_opts(title_opts=opts.TitleOpts(title="Bar-直方图(颜色区分)"))

最后,使用render方法将图表渲染为一个HTML文件,并保存为"bar_histogram_color.html":

    .render("bar_histogram_color.html")

整个过程中,每个方法调用都返回了当前对象,所以可以使用链式调用的方式来依次添加数据和配置。最终,变量c存储了渲染图表的结果。

注:图表资源来源于:
pyecharts-gallery
本站只提供常用图表与其解析


http://www.ppmy.cn/news/189824.html

相关文章

窗口加载事件

window.onload window.onload是窗口&#xff08;页面&#xff09;加载事件&#xff0c;当文档内容完全加载完成会触发该事件&#xff08;包括图像&#xff0c;脚本文件&#xff0c;CSS文件等&#xff09;&#xff0c;就调用所处理函数。 window.onload function(){}; 或者 …

前端使用海康WEB播放器插件,播放摄像头监控视频

基于海康的WEB播放器插件&#xff0c;实现海康摄像头播放功能 之前的文章中有过前端播放直播或者监控视频&#xff0c;用过两个播放器&#xff0c;一个是前面有教程的cyberplayer百度智能云提供的WEB播放器&#xff0c;实现了功能&#xff0c;后来又用了EasyPlayer播放器也实现…

MongoDB原理+命令(增删改查✯数据导入导出✯备份与恢复✯克隆表✯创建多实列✯管理用于以及进程管理)!!!

深夜博文&#xff0c;满满干活 MongoDB概述1.MongoDB的优点2.MongoDB主要特性3.MongoDB 使用场景 MongoDB基础操作1.安装MongoDB2.单台服务器配置多实例3.MongoDB基本操作3.1进入数据库3.2创建表 &#xff08;db.createCollection命令创建&#xff09;3.3插入数据&#xff08;可…

第五阶段-第五阶段高性能分布式缓存Redis

第五阶段 大型分布式系统缓存架构进阶 文章目录 第五阶段 大型分布式系统缓存架构进阶第一部分 Redis 快速实战第一节 缓存原理与设计1.1 缓存基本思想1.11 缓存的使用场景1.12 什么是缓存&#xff1f;1.13 大型网站中缓存的使用 1.2 常见缓存的分类1.21 客户端缓存1.22 网络端…

安卓开发的常见性能瓶颈

概述 本文主要研究基于安卓平台开发的常见性能瓶颈和解决方法 GUI Lagging 线程处理 冗长的操作会影响应用程序的响应性和流畅性&#xff0c;导致GUI滞后或ANR&#xff08;应用程序无响应&#xff09;崩溃。这两种情况通常都是由在UI线程中运行的阻塞性操作引发的。 事实上…

产品经理学习

在这里插入代码片产品经理学习 前言一、产品经理的基础认知&#xff1b;1.产品经理的定义&#xff1b;2.产品经理发展史&#xff1a;3.产品经理分类&#xff1a;4.产品经理在项目中的角色&#xff1a;5.产品经理的具体工作职责&#xff1a;6.产品经理必看十大类目网站7.产品经理…

分布式搜索

分布式搜索 初识elasticsearch 了解elasticsearch elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎&#xff0c;具备非常多强大功能&#xff0c;可以帮助我们从海量数据中快速找到需要的内容 ELK技术栈 elasticsearch结合kibana、Logstash、Beats&#…

NepCTF2022 WP

Web: Just Kidding 访问www.zip获取源码&#xff0c;发现是Larvel框架 有两个路由&#xff0c;其中hello路由是一个反序列化点&#xff0c;第三个路由是我用来查看Laravel版本的 也可以通过post访问获得Laravel版本为9.12.2&#xff0c;搜索到Laravel9的链子如下 https://xz…