Python 利用pandas和matplotlib绘制饼图
这段代码使用了Pandas和Matplotlib库来绘制店铺销售数量占比的饼图。通过读取Excel文件中的数据,对店铺名称进行聚合并按销售数量降序排列,然后使用Matplotlib绘制饼图展示销售数量占比情况。
导入必要的库
import pandas as pd
import matplotlib.pyplot as plt
在这个步骤中,我们导入了两个必要的库:pandas用于数据处理,matplotlib.pyplot用于绘图。
设置中文字体
plt.rcParams['font.family'] = ['SimHei']
这段代码指定中文字体为黑体,以支持中文字符集。
读取数据
data = pd.read_excel('C:\\Users\Admin\\Desktop\\数据核对\\新建 XLSX 工作表.xlsx')
这段代码从指定路径的Excel文件中读取数据,并将数据存储在data变量中。
聚合数据
aggregated_data = data.groupby('店铺名称')['销售数量'].sum()
这段代码根据店铺名称对销售数量进行聚合,并将结果存储在aggregated_data变量中。
排序数据
aggregated_data = aggregated_data.sort_values(ascending=False)
这段代码对聚合后的数据按销售数量进行降序排序。
绘制饼图
plt.pie(aggregated_data, labels=aggregated_data.index, autopct='%.2f%%', startangle=90,
wedgeprops={'linewidth': 1, 'edgecolor': 'white'}, pctdistance=0.85)
这段代码使用plt.pie函数绘制饼图。传入的参数包括聚合后的销售数量数据和店铺名称,以及一些设置如起始角度、扇形边框样式和百分比标签等。
设置图表标题和图例
plt.title('店铺销售数量占比')
plt.legend(loc='best')
这段代码使用plt.title函数设置图表标题,并使用plt.legend函数添加图例。
隐藏饼图中间的白色圆圈
plt.gca().set_aspect('equal')
plt.tight_layout()
这段代码使用plt.gca().set_aspect('equal')将饼图设置为正圆形,并使用plt.tight_layout自动调整图表布局。
显示图表
plt.show()
这段代码显示绘制好的图表。
完整代码如下:
import pandas as pd
import matplotlib.pyplot as plt plt.rcParams['font.family'] = ['SimHei'] # 指定中文字体为黑体 # 从Excel文件中读取数据
data = pd.read_excel('C:\\Users\Admin\\Desktop\\数据核对\\新建 XLSX 工作表.xlsx') # 根据店铺名称聚合销售数量
aggregated_data = data.groupby('店铺名称')['销售数量'].sum() # 按销售数量降序排列
aggregated_data = aggregated_data.sort_values(ascending=False) # 绘制饼图
plt.pie(aggregated_data, labels=aggregated_data.index, autopct='%.2f%%', startangle=90,
wedgeprops={'linewidth': 1, 'edgecolor': 'white'},pctdistance=0.85) # 设置起始角度和扇形边框样式 # 设置图表标题和图例
plt.title('店铺销售数量占比')
plt.legend(loc='best') # 隐藏饼图中间的白色圆圈
plt.gca().set_aspect('equal') # 使饼图为正圆形
plt.tight_layout() # 自动调整图表布局 # 显示图表
plt.show()
Python 利用pandas和matplotlib绘制饼图的更多相关文章
- 用Python的Pandas和Matplotlib绘制股票KDJ指标线
我最近出了一本书,<基于股票大数据分析的Python入门实战 视频教学版>,京东链接:https://item.jd.com/69241653952.html,在其中给出了MACD,KDJ ...
- 用Python的Pandas和Matplotlib绘制股票唐奇安通道,布林带通道和鳄鱼组线
我最近出了一本书,<基于股票大数据分析的Python入门实战 视频教学版>,京东链接:https://item.jd.com/69241653952.html,在其中给出了MACD,KDJ ...
- Python利用pandas处理Excel数据的应用
Python利用pandas处理Excel数据的应用 最近迷上了高效处理数据的pandas,其实这个是用来做数据分析的,如果你是做大数据分析和测试的,那么这个是非常的有用的!!但是其实我们平时在做 ...
- 利用Pandas和matplotlib分析我爱我家房租区间频率
前几天利用python爬取了我爱我家的租房的一些数据,就想着能不能对房租进行一波分析,于是通过书籍和博客等查阅了相关资料,进行了房租的区间分析.不得不说,用python做区间分析比我之前用sql关键字 ...
- Python利用pandas处理数据后画图
pandas要处理的数据是一个数据表格.代码: 1 import pandas as pd 2 import numpy as np 3 import matplotlib.pyplot as plt ...
- python基础入门:matplotlib绘制多Y轴画图(附源码)
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:屁屁酱 PS:如有需要Python学习资料的小伙伴可以加点击下方链接 ...
- python 利用pandas导入数据
- 利用pandas读取Excel表格,用matplotlib.pyplot绘制直方图、折线图、饼图
利用pandas读取Excel表格,用matplotlib.pyplot绘制直方图.折线图.饼图 数据: 折线图代码: import pandas as pdimport matplotlib. ...
- 2.10:数据加工与展示-pandas清洗、Matplotlib绘制
〇.目标 1. 使用pandas完成基本的数据清洗加工处理: 2. 使用Matplotlib进行简单的数据图形化展示. 一.用pandas清洗处理数据 1.判断是否存在空值 数据缺失在很多数据中存在, ...
- Python绘制饼图
Python绘制饼图 1.1 对应代码如下图所示 import matplotlib.pyplot as pltfrom pylab import mplmpl.rcParams['font.sans ...
随机推荐
- Prompt Playground: 一个简易的提示词调试工具
Prompt Playground: 一个简易的提示词调试工具 将LLM引入到日常的开发工作中后,会面临大量的提示词调试的工作,由于LLM不确定性,这个工作会变得非常的繁琐,需要不断的调整,甚至需要大 ...
- Mysql基础5-用户及权限管理
一.介绍 DCL:Data Control Language(数据控制语言),用来管理数据库用户,控制数据库的访问,权限. 二.用户管理 1.查询用户 语法: 1.use mysql; 2.selec ...
- 仪酷LabVIEW AI视觉工具包及开放神经网络交互工具包常见问题解答
前言 哈喽,各位朋友,好久不见~ 之前给大家分享了基于LabVIEW开发的AI视觉工具包及开放神经网络交互工具包,不少朋友私信说在安装和使用过程中会遇到一些问题,今天我们就集中回复一下大家问到最多的问 ...
- chrome pre 自动换行
问题引出 当我想要使用chrome的打印功能生成一份关于md的pdf版本的时候发现有的代码块没有自动换行,生成的PDF没有自动换行,导致部分信息无法阅读 处理方式 把有自动换行的部分处理一下,在md文 ...
- 【go语言】2.3.1 错误处理的基本概念
在 Go 语言中,错误处理是通过返回错误值进行的,而不是像一些其他语言那样通过抛出和捕获异常.Go 语言有一个内置的接口类型 error,专门用于处理错误. error 接口 error 是一个内置的 ...
- 【技术积累】Linux中的命令行【理论篇】【二】
ag命令 命令介绍 ag命令是一个用于在Linux系统中进行文本搜索的工具.它是基于Silver Searcher的改进版本,具有更快的搜索速度和更强大的功能. ag命令的基本用法是在指定的目录中搜索 ...
- 新一代开源流数据湖平台Apache Paimon入门实操-上
@ 目录 概述 定义 核心功能 适用场景 架构原理 总体架构 统一存储 基本概念 文件布局 部署 环境准备 环境部署 实战 Catalog 文件系统 Hive Catalog 创建表 创建Catalo ...
- cesium 绑定dom弹窗(跟随模型)
https://blog.csdn.net/qq_36266612/article/details/109648367?utm_term=cesium%E6%80%8E%E4%B9%88%E6%B7% ...
- redis开启多线程
在Redis 6.0中,非常受关注的第一个新特性就是多线程. 在Redis 6.0中,多线程默认是禁用的,只使用主线程.如果需要使用多线程功能,需要在 redis.conf文件中进行配置(重启服务). ...
- Mybatis框架的搭建和基本使用
本文总结最原始Mybatis框架的搭建和最基本使用(不涉及Spring框架体系). 1 依赖 首先,我们要引入Mybatis依赖: <dependency> <groupId> ...