自动化办公04 使用pyecharts制图
目录
一、柱状图
二、折线图
三、饼图
四、地图
1. 中国地图
2. 世界地图
3. 省会地图
五、词云
Pyecharts是一个用于数据可视化的Python库。它基于Echarts库,可以通过Python代码生成各种类型的图表,如折线图、柱状图、饼图、散点图等。
Pyecharts提供了一种简单、灵活的方式来创建交互式和动态的图表。它支持多种数据格式,包括列表、字典、Pandas的DataFrame等。可以通过调用Pyecharts的各种方法和属性,设置图表的标题、坐标轴、图例等属性,并可以自定义样式、颜色和标签等。
Pyecharts还提供了多种输出格式,包括HTML文件、图片文件和Jupyter Notebook等。生成的图表可以在网页上进行交互,并支持缩放、切换数据等功能。
pyecharts学习网站:点这里进入
色卡查询网:点这里进入
一、柱状图
from pyecharts import options
from pyecharts.charts import Bar# 1.创建柱状图对象
bar = Bar()# 2.添加数据
# x轴数据只能有一个,y轴可以有多个,但是y轴数据必须和x轴对应
# 添加x轴数据
bar.add_xaxis(['数据分析', '物联网', '云计算', 'Java开发', '鸿蒙开发'])# 添加y轴数据
# 单独设置特殊标记点也在数据内部设置
bar.add_yaxis('招生人数',[980, 1200, 654, 1315, 805],color='#c0ebd7',# bar_width=60, # 柱子宽度(单独设置这一个数据宽度时可能会导致另一个柱子不显示)# bar_max_width=60, # 缩放时柱子的最大、最小宽度# bar_min_width=60,)
bar.add_yaxis('应届生人数',[520, 200, 129, 802, 109],color='#b0a4e3')# 3.添加配置
# 1)全局配置
bar.set_global_opts(# a.标题配置title_opts=options.TitleOpts(# 设置标题内容和标题点击跳转的网址title='某教育各学生招生信息', # 主标题title_link='https://www.baidu.com',subtitle='2023年年度总结', # 副标题subtitle_link='https://www.taobao.com',# 设置标题位置# pos_left='50',pos_right='260',# 设置对齐方式text_align='center', # right,left,center),# b.图例配置legend_opts=options.LegendOpts(is_show=True, # 图例展示/隐藏pos_right=100, # 图例位置pos_top=30,item_width=10 # 图例大小),# c.x轴和y轴的配置xaxis_opts=options.AxisOpts(name='学科名称'),yaxis_opts=options.AxisOpts(name='人数',# 设置起始最小值、最大值# min_=100,# max_=1400,),# d.添加数据缩放工具(数据多,柱子挤的时候用)# datazoom_opts=options.DataZoomOpts(# is_show=True, # 默认显示中间部分# # 更改默认的显示部分# range_start=0,# range_end=50# )
)
# 2)系列配置(针对图上的内容)
bar.set_series_opts(# a.设置数据标记label_opts=options.LabelOpts(is_show=True, # 柱状图上的数字是否显示position='top', # top,bottom,right,leftcolor='#177cb0', # 字体颜色rotate=45, # 旋转),# b.标记点(标记特殊点)markpoint_opts=options.MarkPointOpts(data=[# 注意数据的类型options.MarkPointItem(name='最大值',type_='max'),options.MarkPointItem(name='最小值',type_='min')]),markline_opts=options.MarkLineOpts(data=[options.MarkLineItem(name='平均值', type_='average')])
)# 制图
bar.render('charts/柱状图.html')

导入options模块是为了使用Pyecharts库的可视化图表的参数配置选项。该模块包含了各种可用的配置选项,可以通过设置这些选项来自定义图表的样式、布局和行为。例如,可以使用options模块来设置图表的标题、坐标轴名称、颜色主题、图例位置等。这样可以根据需要将图表个性化地定制成符合自己需求的样式。
二、折线图
from pyecharts.charts import Line
from pyecharts import options# 1.创建折线图对象
line1 = Line()# 2.添加数据
line1.add_xaxis(['数据分析', '物联网', '云计算', 'Java开发', '鸿蒙开发'])
line1.add_yaxis('招生人数',[980, 1200, 654, 1315, 805],color='#99CCFF',is_smooth=True, # 是否平滑# 线型可选:solid', 'dashed', 'dotted'linestyle_opts=options.LineStyleOpts(type_='dashed'))
line1.add_yaxis('应届生人数',[520, 200, 129, 802, 109],color='#CC99CC')# 添加配置
# 全局
line1.set_global_opts(# 设置标题title_opts=options.TitleOpts(title='某教育招生情况',pos_left='380'),# 图例legend_opts=options.LegendOpts(pos_right=90,pos_top=30)
)
# 系列配置
line1.set_series_opts(# 特殊标记点markline_opts=options.MarkLineOpts(# 添加平均值标记线data=[# type_的值:max,min,averageoptions.MarkLineItem(name='平均值', type_='average')])
)# 4.制图
line1.render('charts/折线图.html')

三、饼图
from pyecharts.charts import Pie
from pyecharts import options# 1.创建饼图对象
pie1 = Pie()# 2.添加数据
pie1.add('销量',[('华为',120980),('小米',98647),('oppo',20098),('Apple',109840),('三星',5679)],# 设置内圆半径和外圆半径radius=(60, 150),# 让外半径的大小和数据占比相关联# 即外圆半径和下图一样不一样,若要外圆半径一直,则将下面一句代码注释rosetype='radius')# 3.添加配置
pie1.set_global_opts(legend_opts=options.LegendOpts(is_show=False),title_opts=options.TitleOpts(title='2023年京东商城个品牌手机销量',pos_left='310')
)
pie1.set_series_opts(label_opts=options.LabelOpts(# {b} - 名称# {d} - 比例值# 默认没有%存在,所以注意添加formatter='{b}({d}%)')
)# 4.制图
pie1.render('charts/饼图.html')

四、地图
1. 中国地图
pyecharts import options
from pyecharts.charts import Map# =================中国地图=================
# 1.创建地图对象
map1 = Map()# 2.添加数据
# 默认中国地图
map1.add('人口数量',[('四川省', 34918288),('重庆市', 9192828),('山东省', 10928282),('辽宁省', 892733),('北京市', 109923),('上海市', 29981729),('广西省', 782911)],# 限制缩放比例min_scale_limit=0.5,max_scale_limit=3,# 默认显示的缩放比例zoom=1.5,# 设置地图位置pos_top=150
)# 3.添加配置
map1.set_global_opts(title_opts=options.TitleOpts(title='2023年全国人口数量分布图',pos_left='350'),legend_opts=options.LegendOpts(is_show=False),# 添加视觉地图配置(让不同区域填充对应的颜色)visualmap_opts=options.VisualMapOpts(is_show=True,# 颜色范围的最大值、最小值设定是根据上方自己添加的数据min_=50000,max_=35000000,# 是否显示颜色范围图例is_piecewise=True)
)# 4.制图
map1.render('charts/地图.html')

2. 世界地图
# 1.创建地图对象
map2 = Map()# 2.添加数据,并且设置地图类型(默认是china)
map2.add('人均GDP',[('China', 192830), ('Canada', 154728), ('Australia', 25845), ('Spain', 85462)],maptype='world', ## 限制缩放比例min_scale_limit=0.5,max_scale_limit=2,# 默认显示的缩放比例# zoom=1.5,# 设置地图位置# pos_top=150
)# 3.添加配置
map2.set_global_opts(title_opts=options.TitleOpts(title='2023年世界各国人均GDP',pos_left='400'),legend_opts=options.LegendOpts(is_show=False),# 添加视觉地图配置(让不同区域填充对应的颜色)visualmap_opts=options.VisualMapOpts(is_show=True,min_=20000,max_=200000,# 是否显示颜色范围图例is_piecewise=True)
)
map2.set_series_opts(label_opts=options.LabelOpts(is_show=False)
)# 4.制图
map2.render('charts/世界地图.html')

3. 省会地图
# 1.创建地图对象
map3 = Map()# 2.添加数据
# 默认中国地图
map3.add('人口数量',[('成都市',98542)],maptype='四川',# 限制缩放比例min_scale_limit=0.5,max_scale_limit=3,# 默认显示的缩放比例zoom=1.1,# 设置地图位置# pos_top=150
)# 3.添加配置
map3.set_global_opts(title_opts=options.TitleOpts(title='2023年全国人口数量分布图',pos_left='350'),legend_opts=options.LegendOpts(is_show=False),# 添加视觉地图配置(让不同区域填充对应的颜色)visualmap_opts=options.VisualMapOpts(is_show=True,min_=50000,max_=35000000,# 是否显示颜色范围图例is_piecewise=True)
)# # 4.制图
map3.render('charts/省会地图.html')

注意:
除了上面介绍的三种地图,还可以是范围更小的市地图,都只需要将maptype='四川'改成相应的地区,例如:

五、词云
from pyecharts import options
from pyecharts.charts import WordCloud# 1.
wc1 = WordCloud()# 2.添加数据
wc1.add('',[('英雄联盟', 91828), ('红色警戒', 1928), ('怪物猎人世界', 25468), ('守望先锋', 86472),('植物大战僵尸', 1828), ('原神', 666666), ('开心消消乐', 238940), ('王者荣耀', 10458642), ('光遇', 3898309),('地下城与勇士', 1056321), ('神界原罪', 91828), ('只狼', 1335468), ('桃园深处有人家', 388309), ('第五人格', 246513),('蛋仔派对', 1523845), ('茶杯头', 2828), ('柏承俊', 115434), ('逆水寒', 348665), ('狂扁小朋友', 999999),('纸嫁衣', 3898309),('造梦西游', 28), ('闪电五连鞭', 154121), ('赛博朋克2077', 54723), ('洛克王国', 389), ('抓大鹅', 3456),('黑神话 · 悟空', 9122828),('黎明杀机', 114514), ('4399', 3089), ('虐杀2', 86744), ('战锤', 9128), ('绝地求生', 1654845), ('不是,哥们', 56789),('绝区零', 1520), ('APEX', 2315120), ("鸣潮", 2384337), ('光与夜之恋', 3898309), ('CSGO', 1290), ('永劫无间', 290),('守望先锋', 120), ('和平精英', 15032), ('qq飞车', 782), ('第五人格', 403),('穿越火线', 3909), ('诛仙', 109), ('红警', 99), ('qq农场', 297), ('地铁跑酷', 1282), ('蛋仔派对', 981),('贪吃蛇', 70), ('蜘蛛纸牌', 1009), ('扫雷', 431), ('金铲铲之战', 1002525), ('十字军之王', 1453), ('apex', 16547),('暴力摩托', 5647),('倩女幽魂', 536), ('魔兽3冰封王座', 48985), ('valorant', 888), ('羊了个羊', 2035689), ('幻兽帕鲁', 473453),('彩虹六号', 54343),('生化危机', 1654), ('恋爱脑', 23432), ('QQ炫舞', 23580), ('猛鬼宿舍', '2343'), ('战神3', 5151512),('骑马与砍杀', 16465), ('Dota2', 2000),('QQ飞车', 2353), ('食物语', 890), ('PUBG', 5251), ('光遇', 24235), ('孤岛惊魂5', 4654), ('江南百景图', 6873),('漫威蜘蛛侠', 1412), ('Cuphead', 4141),('荒野大镖客', 12515), ('GTA5', 1251), ('战地1', 1515),('战地2', 1515), ('战地5', 1515), ('彩虹六号', 1515), ('Dota2', 2141), ('魔兽争霸', 1515), ('守望先锋2', 142515)],# 设置轮廓形状: 'circle', 'cardioid', 'diamond', 'triangle-forward', 'triangle', 'pentagon', 'star' 可选shape='star'
)# 3.制图
wc1.render('charts/词云.html')

上面给出的词云只能看出大概形状,因为代码中给出的数据太少了。所以词云绘图一般会和数据爬取、表格、数据库等关联使用。
相关文章:
自动化办公04 使用pyecharts制图
目录 一、柱状图 二、折线图 三、饼图 四、地图 1. 中国地图 2. 世界地图 3. 省会地图 五、词云 Pyecharts是一个用于数据可视化的Python库。它基于Echarts库,可以通过Python代码生成各种类型的图表,如折线图、柱状图、饼图、散点图等。 Pyecha…...
【Elasticsearch】在es中实现mysql中的FIND_IN_SET查询条件
需求场景: 有个文章表里面有个type字段,它存储的是文章类型,有 1头条、2推荐、3热点、4图文等等 。 商品表中有一个type字段,储存的事商品类型例如:1.热销单品,2.品类TOP10,3.销量榜TOP10等等 它的type字段值很有可能是1,2,3,4 在mysql中实现语句 select * from produc…...
内网一键部署k8s-kubeshpere,1.22.12版本
1.引言 本文档旨在指导读者在内网环境中部署 Kubernetes 集群。Kubernetes 是一种用于自动化容器化应用程序部署、扩展和管理的开源平台,其在云原生应用开发和部署中具有广泛的应用。然而,由于一些安全或网络限制,一些组织可能选择在内部网络…...
Python数据分析第一课:Anaconda的安装使用
Python数据分析第一课:Anaconda的安装使用 1.Anaconda是什么? Anaconda是一个便捷的获取包,并且对包和环境进行管理的虚拟环境工具,Anaconda包括了conda、Python在内的超过180多个包和依赖项 简单来说,Anaconda是包管理器和环境…...
数据结构——
1. 什么是并查集? 在计算机科学中,并查集(英文:Disjoint-set data structure,直译为不数据结构交集)是一种数据结构,用于处理一些不交集(Disjoint sets,一系列没有重复元…...
微信小程序建议录音机
在小程序中实现录音机功能,可以通过使用小程序提供的wx.getRecorderManager() API来获取录音管理对象,然后使用这个对象的start()方法来开始录音,使用stop()方法来停止录音,并使用onStop()方法来监听录音的结束。以下是一个简单的…...
双指针:移动零
题目链接:. - 力扣(LeetCode) 乍一看有点难度,但也是快慢指针的模板。和26. 删除有序数组中的重复项类似,只不过多了一步填充0。 class Solution {public int removeDuplicates(int[] nums) {int fast 1,slow 1;wh…...
图像亮度和对比度的调整
在网上找了很多图像亮度的调整算法,下面是其中一种,可以通过条形框进行调整,并实时的查看对应参数值后的效果。 图像亮度处理公式: y [x - 127.5 * (1 - B)] * k 127.5 * (1 B); x 是输入像素值 y 是输出像素值 B 是亮度值, …...
Linux加固-权限管理_chattr之i和a参数
一、参数i i:如果对文件设置了i属性,不允许对文件进行删除、改名,也不能添加和修改数据;如果对目录设置了i属性,那么只能修改目录下文件的数据,但不允许建立和删除文件。(相当于把文件给锁住了,…...
windows10/win11截图快捷键 和 剪贴板历史记录 快捷键
后知后觉的我今天又学了两招: windows10/win11截图快捷键 按 Windows 徽标键 Shift S。 选择屏幕截图的区域时,桌面将变暗。 默认情况下,选择“矩形模式”。 可以通过在工具栏中选择以下选项之一来更改截图的形状:“矩形模式”…...
上海计算机考研避雷,25考研慎报
上大计算机一直很热 408考研er重来没有让我失望过,现在上大的专业课是11408,按理说,这个专业课的难度是很高的,但是408er给卷出了新高度,大家可以去上大官网看看今年最新的数据,我也帮大家统计了24年最新的…...
第九次作业
BookInfoMapper.xml <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace"com.rabbite…...
A股探底回升,跑出惊天大阳,你们知道为什么吗?
今天的A股,探底回升,让人惊呆了,你们知道是为什么吗?盘面上出现3个重要信号,一起来看看: 1、今天A股市场炸锅了,AI人工智能、国产软件、存储芯片迎来了涨停潮,惊呆了,科技…...
jenkins nginx自动化部署 php项目
在当今快速发展的IT领域,自动化部署已成为提高工作效率和减少错误的关键。Jenkins作为持续集成/持续部署(CI/CD)的佼佼者,结合Docker容器技术和PHP编程语言,以及Ansible自动化工具,可以实现高效、可靠的自动…...
海外代理IP哪个可靠?如何测试代理的稳定性?
在数字化时代,互联网已成为我们日常生活的重要组成部分。然而,随着网络活动的增加,我们面临的安全威胁也随之增加。 黑客攻击、数据泄露、网络钓鱼等安全事件频发,严重威胁着我们的个人隐私和网络安全。代理服务器在当今的互联网世…...
MySQL之可扩展性(四)
可扩展性 向外扩展 分片?还是不分片? 这是一个问题,对吧?答案很简单:如非必要,尽量不分片。首先看是否能通过性能调优或者更好的应用或数据库设计来推迟分片。如果能足够长时间地推迟分片,也许可以直接购买更大地服…...
JupyterLab使用指南(三):JupyterLab的Cell详细介绍
JupyterLab Cell 使用教程 JupyterLab 的 cell 是一种强大的工具,提供了编写、执行、展示和记录的全方位支持,使得复杂的计算任务变得简单直观。通过熟练掌握 cell 的各种操作和快捷键,用户可以显著提高工作效率,专注于解决实际问…...
solidity智能合约如何实现跨合约调用函数
背景 比如现在有一个需求、我需要通过外部合约获取BRC20 token的总交易量。那么我需要在brc20的转账函数里面做一些调整,主要是两个函数内统计转移量。然后再提供外部获取函数。 /*** dev Sets amount as the allowance of spender over the callers tokens.** Ret…...
关于Vue2的生命周期会问到哪些面试题?
在Vue2的面试中,关于生命周期的问题通常会涉及以下几个方面: 一、Vue2的生命周期概述 Vue2的生命周期是什么? Vue2的生命周期是指从Vue实例的创建、初始化数据、编译模板、挂载Dom、渲染、更新、卸载等一系列过程。 二、生命周期钩子函数 …...
尚品汇-(七)
(1)在网关中实现跨域 全局配置类实现 包名:com.atguigu.gmall.gateway.config 创建CorsConfig类 Configuration public class CorsConfig {Beanpublic CorsWebFilter corsWebFilter(){// cors跨域配置对象CorsConfiguration configuration…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别
OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...
2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
怎么让Comfyui导出的图像不包含工作流信息,
为了数据安全,让Comfyui导出的图像不包含工作流信息,导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo(推荐) 在 save_images 方法中,删除或注释掉所有与 metadata …...
