当前位置: 首页 > news >正文

Pyecharts数据可视化

Pyecharts数据可视化

    • 1、Pyecharts模块
    • 2、柱状图
    • 3、折线图
    • 4、饼图
    • 5、散点图
    • 6、图表合并
    • 7、词云
    • 8、地图

1、Pyecharts模块


ECharts是百度提供的基于JavaScript的开源可视化库,主要用于Web端数据可视化

Echarts是通过JS实现的,Pyecharts则可以使用Python来调用里面的API

Pyecharts特点:

  • 1)简洁的API设计,支持链式调用
  • 2)丰富的图表,包括地图
  • 3)支持主流Notebook环境,如JupyterLab
  • 4)可集成Flask、Django等主流Web框架

Pyecharts官方网站:https://pyecharts.org/

Pyecharts中文网站:https://pyecharts.org/#/zh-cn/

安装:

pip install pyecharts

基本使用如下:

注意:render(path)在Python文件的同级目录下生成render.html文件,可以通过path参数指定HTML输出路径

2、柱状图

from pyecharts.charts import Bar, Line, Pie, EffectScatter, Grid, WordCloud, Map
from pyecharts import options as opts
from pyecharts.globals import SymbolType
from pyecharts.faker import Faker
x = ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
data_china = [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]
data_russia = [1.6, 5.4, 9.3, 28.4, 22.7, 60.7, 162.6, 199.2, 56.7, 43.8, 3.0, 4.9]

1)基本柱状图

bar = Bar().\add_xaxis(x).\add_yaxis("China", data_china).\set_global_opts(title_opts=opts.TitleOpts(title="柱状图示例")).\render(r'C:\Users\cc\Desktop\bar.html')

2)多柱状图

bar_m = Bar().\add_xaxis(x).\add_yaxis("China", data_china).\add_yaxis("Russia", data_russia).\set_global_opts(title_opts=opts.TitleOpts(title="多柱状图示例")).\render(r'C:\Users\cc\Desktop\bar_m.html')

3)柱状图翻转

bar_t = Bar().\add_xaxis(x).\add_yaxis("China", data_china).\add_yaxis("Russia", data_russia).\reversal_axis().\set_series_opts(label_opts=opts.LabelOpts(position="right")).\set_global_opts(title_opts=opts.TitleOpts(title="柱状图翻转")).\render(r'C:\Users\cc\Desktop\bar_t.html')

3、折线图

1)基本折线图

line = Line().\add_xaxis(x).\add_yaxis("China", data_china).\set_global_opts(title_opts=opts.TitleOpts(title="折线图示例")).\render(r'C:\Users\cc\Desktop\line.html')

2)多折线图

line_m = Line().\add_xaxis(x).\add_yaxis("China", data_china).\add_yaxis("Russia", data_russia).\set_global_opts(title_opts=opts.TitleOpts(title="多折线图示例")).\render(r'C:\Users\cc\Desktop\line_m.html')

3)阶梯折线图

line_t = Line().\add_xaxis(x).\add_yaxis("China", data_china, is_step=True).\set_global_opts(title_opts=opts.TitleOpts(title="阶梯折线图")).\render(r'C:\Users\cc\Desktop\line_t.html')

4、饼图

1)基本饼图

pie = Pie().\add("", [list(z) for z in zip(x, data_china)]).\set_global_opts(title_opts=opts.TitleOpts(title="饼图示例")).\set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}")).\render(r'C:\Users\cc\Desktop\pie.html')

2)环状饼图

pie_c = Pie(init_opts=opts.InitOpts(width="600px", height="400px")).\add(series_name="环状饼图",data_pair=[list(z) for z in zip(x, data_china)],radius=["50%", "70%"],label_opts=opts.LabelOpts(is_show=False, position="center")).\set_global_opts(legend_opts=opts.LegendOpts(pos_left="left", orient="vertical")).\set_series_opts(tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b}: {c} ({d}%)"),label_opts=opts.LabelOpts(formatter="{b}: {c}")).\render(r'C:\Users\cc\Desktop\pie_c.html')

5、散点图

scatter = EffectScatter().\add_xaxis(x).\add_yaxis("China", data_china, symbol=SymbolType.ROUND_RECT).\set_global_opts(title_opts=opts.TitleOpts(title="散点图示例")).\render(r'C:\Users\cc\Desktop\scatter.html')

6、图表合并

例如:将柱状图和折线图放在一起

bar_m = Bar().\add_xaxis(x).\add_yaxis("China", data_china).\add_yaxis("Russia", data_russia).\set_global_opts(title_opts=opts.TitleOpts(title="多图合并"))line_m = Line().\add_xaxis(x).\add_yaxis("蒸发量", [p + 50 for p in data_china])bar_m.overlap(line_m)
grid = Grid()
grid.add(bar_m, opts.GridOpts(pos_left="5%", pos_right="5%"), is_control_axis_index=True)
grid.render(r'C:\Users\cc\Desktop\bar_line.html')

7、词云

Pyecharts支持词云,更贴心的是中文也完全没有问题,不会出现乱码

例如词频统计结果:

data = [("生活资源", "999"), ("供热管理", "888"), ("供气质量", "777"), ("生活用水管理", "688"), ("一次供水问题", "588"),("交通运输", "516"), ("城市交通", "515"), ("环境保护", "483"), ("房地产管理", "462"), ("城乡建设", "449"),("社会保障与福利", "429"), ("社会保障", "407"), ("文体与教育管理", "406"), ("公共安全", "406"),("公交运输管理", "386"), ("出租车运营管理", "385"), ("供热管理", "375"), ("市容环卫", "355"),("自然资源管理", "355"), ("粉尘污染", "335"), ("噪声污染", "324"), ("土地资源管理", "304"),("物业服务与管理", "304"), ("医疗卫生", "284"), ("粉煤灰污染", "284"), ("占道", "284"), ("供热发展", "254"),("农村土地规划管理", "254"), ("生活噪音", "253"), ("供热单位影响", "253"), ("城市供电", "223"),("房屋质量与安全", "223"), ("大气污染", "223"), ("房屋安全", "223"), ("文化活动", "223"), ("拆迁管理", "223"),("公共设施", "223"), ("供气质量", "223"), ("供电管理", "223"), ("燃气管理", "152"), ("教育管理", "152"),("医疗纠纷", "152"), ("执法监督", "152"), ("设备安全", "152"), ("政务建设", "152"), ("县区、开发区", "152"),("宏观经济", "152"), ("教育管理", "112"), ("社会保障", "112"), ("生活用水管理", "112"),("物业服务与管理", "112"), ("分类列表", "112"), ("农业生产", "112"), ("二次供水问题", "112"),("城市公共设施", "92"), ("拆迁政策咨询", "92"), ("物业服务", "92"), ("物业管理", "92"),("社会保障保险管理", "92"), ("低保管理", "92"), ("文娱市场管理", "72"), ("城市交通秩序管理", "72"),("执法争议", "72"), ("商业烟尘污染", "72"), ("占道堆放", "71"), ("地上设施", "71"), ("水质", "71"),("无水", "71"), ("供热单位影响", "71"), ("人行道管理", "71"), ("主网原因", "71"), ("集中供热", "71"),("客运管理", "71"), ("国有公交(大巴)管理", "71"), ("工业粉尘污染", "71"), ("治安案件", "71"),("压力容器安全", "71"), ("身份证管理", "71"), ("群众健身", "41"), ("工业排放污染", "41"),("破坏森林资源", "41"), ("市场收费", "41"), ("生产资金", "41"), ("生产噪声", "41"), ("农村低保", "41"),("劳动争议", "41"), ("劳动合同争议", "41"), ("劳动报酬与福利", "41"), ("医疗事故", "21"), ("停供", "21"),("基础教育", "21"), ("职业教育", "21"), ("物业资质管理", "21"), ("拆迁补偿", "21"), ("设施维护", "21"),("市场外溢", "11"), ("占道经营", "11"), ("树木管理", "11"), ("农村基础设施", "11"), ("无水", "11"),("供气质量", "11"), ("停气", "11"), ("市政府工作部门(含部门管理机构、直属单位)", "11"), ("燃气管理", "11"),("市容环卫", "11"), ("新闻传媒", "11"), ("人才招聘", "11"), ("市场环境", "11"), ("行政事业收费", "11"),("食品安全与卫生", "11"), ("城市交通", "11"), ("房地产开发", "11"), ("房屋配套问题", "11"), ("物业服务", "11"),("物业管理", "11"), ("占道", "11"), ("园林绿化", "11"), ("户籍管理及身份证", "11"), ("公交运输管理", "11"),("公路(水路)交通", "11"), ("房屋与图纸不符", "11"), ("有线电视", "11"), ("社会治安", "11"), ("林业资源", "11"),("其他行政事业收费", "11"), ("经营性收费", "11"), ("食品安全与卫生", "11"), ("体育活动", "11"),("有线电视安装及调试维护", "11"), ("低保管理", "11"), ("劳动争议", "11"), ("社会福利及事务", "11"),("一次供水问题", "11")]
wordcloud = WordCloud().\add(series_name="词云分析", data_pair=data, word_size_range=[6, 66]).\set_global_opts(title_opts=opts.TitleOpts(title="热点分析", title_textstyle_opts=opts.TextStyleOpts(font_size=23)),tooltip_opts=opts.TooltipOpts(is_show=True)).\render(r'C:\Users\cc\Desktop\wordcloud.html')

8、地图

1)中国地图

import random# 中国地图
provinces = ['广东省', '湖北省', '上海市', '湖南省', '重庆市', '四川省', '新疆维吾尔自治区', '黑龙江省', '浙江省']
values = [random.randint(1, 1024) for p in provinces]map = Map().\add("商家X", [z for z in zip(provinces, values)], "china").\set_global_opts(title_opts=opts.TitleOpts(title="地图示例"),visualmap_opts=opts.VisualMapOpts(max_=1024, is_piecewise=True)).\render(r'C:\Users\cc\Desktop\map.html')

2)省地图

# 省地图
cities = ['西安市', '宝鸡市', '榆林市', '渭南市', '汉中市']
values = [random.randint(1, 1024) for c in cities]map = Map().\add("商家Y", [z for z in zip(cities, values)], "陕西").\set_global_opts(title_opts=opts.TitleOpts(title="地图示例"),visualmap_opts=opts.VisualMapOpts(max_=1024, is_piecewise=True)).\render(r'C:\Users\cc\Desktop\map_p.html')

相关文章:

Pyecharts数据可视化

Pyecharts数据可视化 1、Pyecharts模块2、柱状图3、折线图4、饼图5、散点图6、图表合并7、词云8、地图 1、Pyecharts模块 ECharts是百度提供的基于JavaScript的开源可视化库&#xff0c;主要用于Web端数据可视化 Echarts是通过JS实现的&#xff0c;Pyecharts则可以使用Python来…...

集合-List集合

系列文章目录 1.集合-Collection-CSDN博客​​​​​​ 2.集合-List集合-CSDN博客 文章目录 目录 系列文章目录 文章目录 前言 一 . 什么是List? 二 . List集合的特点 三 . 常用方法 1.void add(int index, E element): 将指定的元素插入到列表的指定位置。 2.E remove(int in…...

vuex的使用

1 vuex的使用 1 vuex的使用 store/index.js -在Vue中实现集中式状态&#xff08;数据&#xff09;管理的一个Vue插件&#xff0c;对vue应用中多个组件的共享状态进行集中式 的管理&#xff08;读/写&#xff09;&#xff0c;也是一种组件间通信的方式&#xff0c;且适用于任意…...

raw图片处理软件:DxO PhotoLab 6 mac中文版支持相机格式

DxO PhotoLab 6 mac是一款专业的RAW图片处理软件&#xff0c;适用于Mac操作系统。它具有先进的图像处理技术和直观易用的界面&#xff0c;可帮助用户轻松地将RAW格式的照片转换为高质量的JPEG或TIFF图像。 DxO PhotoLab 6支持多种相机品牌的RAW格式&#xff0c;包括佳能、尼康、…...

ReactPortals传送门

ReactPortals传送门 React Portals提供了一种将子节点渲染到父组件以外的DOM节点的解决方案&#xff0c;即允许将JSX作为children渲染至DOM的不同部分&#xff0c;最常见用例是子组件需要从视觉上脱离父容器&#xff0c;例如对话框、浮动工具栏、提示信息等。 描述 <div&…...

【GDB】 command 命令

GDB command 命令 语法 command 命令是一个很好用的调试命令&#xff0c;它配合断点使用&#xff0c;可以在指定的断点执行预先设置的命令 其语法为&#xff1a;command bread_id&#xff0c;这样会提示你输入你要执行的命令&#xff0c;以 end 结束。这个 bread_id 就是用 …...

1038 统计同成绩学生

输入样例&#xff1a; 10 60 75 90 55 75 99 82 90 75 50 3 75 90 88 输出样例&#xff1a; 3 2 0 solution #include <stdio.h> int main(){int n, d, k, hash[101] {0}, a[100000];scanf("%d", &n);for(int i 0; i < n; i){scanf("%d&quo…...

git报错:Failed to connect to 127.0.0.1 port 1080

Bug描述 由于在试了网上的这条命令 git config --global http.proxy socks5 127.0.0.1:1080 git config --global https.proxy socks5 127.0.0.1:1080git config --global http.proxy 127.0.0.1:1080 git config --global https.proxy 127.0.0.1:1080Bug描述&#xff1a;Faile…...

php eayswoole node axios crypto-js 实现大文件分片上传复盘

不啰嗦 直接上步骤 步骤1.开发环境配置 项目需要node.js 做前端支撑 官网下载地址&#xff1a; http://nodejs.cn/download/ 根据自己需要下载对应的版本,我下载的是windows系统64位的版本。 包下载好后 进行安装&#xff0c;安装步骤在此省略... 测试是否安装成功 …...

《Upload-Labs》01. Pass 1~13

Upload-Labs 索引前言Pass-01题解 Pass-02题解总结 Pass-03题解总结 Pass-04题解 Pass-05题解总结 Pass-06题解总结 Pass-07题解总结 Pass-08题解总结 Pass-09题解 Pass-10题解 Pass-11题解 Pass-12题解总结 Pass-13题解 靶场部署在 VMware - Win7。 靶场地址&#xff1a;https…...

v-for中的key

在Vue中&#xff0c;当使用v-for指令循环渲染元素时&#xff0c;添加:key是一个推荐做法&#xff0c;尤其是在循环的元素可能会被重新排序、添加或删除的情况下。 :key的作用是为每个循环的元素提供一个唯一的标识符&#xff0c;以便Vue能够跟踪和管理这些元素的状态。Vue使用…...

MySQL学习笔记17

MySQL权限管理grant&#xff1a; 权限说明&#xff1a; Table 6.2 Permissible Privileges for GRANT and REVOKE PrivilegeGrant Table ColumnContextALL [PRIVILEGES]Synonym for “all privileges”Server administrationALTERAlter_privTablesALTER ROUTINEAlter_routin…...

跨境电商建站:选择域名需要注意什么?

在跨境电商建站过程中&#xff0c;选择一个合适的域名至关重要&#xff0c;尤其是对于跨境电商独立站来说&#xff0c;它对未来的seo排名和品牌建设都有着重要影响。关于本文&#xff0c;我会先从域名的定义开始&#xff0c;到域名选择的重要性&#xff0c;再到如何选择一个完美…...

jupyterlab

1. 环境&#xff1a;linux 环境&#xff08;基于ubuntu-fork 镜像实现&#xff09; 2. pip install jupyter notebook 3. 编译jupyterlab源代码必须使用 node 14.21.3 高版本编译报错#下载 node 14.21.3 :wget https://nodejs.org/download/release/latest-v14.x/node-v14.21.…...

Oracle的递归公共表表达式

查询节点id为2的所有子节点的数据&#xff0c;包括向下级联 WITH T1 (id, parent_id, data) AS (SELECT id, parent_id, dataFROM nodesWHERE id 2UNION ALLSELECT t.id, t.parent_id, t.dataFROM nodes tJOIN T1 n ON t.parent_id n.id ) SELECT * FROM T1; --建表语句 C…...

解决antd vue ts v-model:value绑定Boolean布尔类型爆红但可以使用

没啥好写的&#xff0c;写点注意点把 前言&#xff1a;在 antd vue中需要用到对应的类型转换&#xff0c;v-model后面补一个value来表明类型&#xff0c;但这也是默认类型&#xff0c;并不是指定类型默认是 (property) value?: string | number | undefined 字符&#xff0c;…...

zblog插件大全-zblog免费插件

在当今数字化时代&#xff0c;拥有一个精彩的博客或网站已经成为许多人追求的目标。通过博客&#xff0c;我们可以分享知识、表达观点&#xff0c;甚至创造收入。然而&#xff0c;维持一个充满新鲜内容的博客却不是一件容易的事情。 ZBlog自动采集插件 什么是ZBlog自动采集插件…...

思科、华为、华三、锐捷网络设备巡检命令

下面为四种设备巡检命令&#xff0c;以便日常查阅&#xff1a; 华三 screen-length disable 取消分页 displayversion 查看版本 display clock 查看日期时钟 display fan 查看风扇状态 display power 查看电源信息 display cpu-usage 查看CPU利用率 display memory 查看…...

正则表达式贪婪模式和非贪婪模式

一、贪婪模式 贪婪模式表示尽可能多的匹配字符串&#xff0c;正则表达式六个量词元字符?、、*、{n}、{n,m}、{n,}默认是贪婪模式 接下来引入一个场景来分析说明 获取html a标签href属性的值 <a href"https://www.baidu.com/" attr"abc"></a>…...

借助 ControlNet 生成艺术二维码 – 基于 Stable Diffusion 的 AI 绘画方案

背景介绍 在过去的数月中&#xff0c;亚马逊云科技已经推出了多篇博文&#xff0c;来介绍如何在亚马逊云科技上部署 Stable Diffusion&#xff0c;或是如何结合 Amazon SageMaker 与 Stable Diffusion 进行模型训练和推理任务。 为了帮助客户快速、安全地在亚马逊云科技上构建、…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能&#xff0c;本节首先介绍如何通过 Docker 快速体验 TDengine&#xff0c;然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker&#xff0c;请使用 安装包的方式快…...

Python:操作 Excel 折叠

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计

随着大语言模型&#xff08;LLM&#xff09;参数规模的增长&#xff0c;推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长&#xff0c;而KV缓存的内存消耗可能高达数十GB&#xff08;例如Llama2-7B处理100K token时需50GB内存&a…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...