matplotlib绘制饼图之基本配置——万能模板案例
目录
饼图的概念
连接数据库绘制饼图案例(pandas画图)
显示百分比
饼图常见参数
扇区分离饼图
添加颜色
添加阴影
显示百分比
控制起始角度
将饼图放置在坐标轴
双饼图显示
饼图万能模板
每文一语
饼图的概念
饼图英文学名为Sector Graph,又名Pie Graph。常用于统计学模块。2D饼图为圆形,手画时,常用圆规作图。
仅排列在工作表的一列或一行中的数据可以绘制到饼图中。饼图显示一个数据系列 (数据系列:在图表中绘制的相关数据点,这些数据源自数据表的行或列。图表中的每个数据系列具有唯一的颜色或图案并且在图表的图例中表示。可以在图表中绘制一个或多个数据系列。饼图只有一个数据系列。)中各项的大小与各项总和的比例。饼图中的数据点 (数据点:在图表中绘制的单个值,这些值由条形、柱形、折线、饼图或圆环图的扇面、圆点和其他被称为数据标记的图形表示。相同颜色的数据标记组成一个数据系列。)显示为整个饼图的百分比。
连接数据库绘制饼图案例(pandas画图)
# -*- coding: utf-8 -*-
import pymysql
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'] #显示中文
plt.rcParams['axes.unicode_minus']=False #正常显示负号#连接Mysql数据库
db = pymysql.connect(host='localhost', # 主机名user='root', # 用户名password='root', # 密码database='mydb') # 默认数据库# 获取游标对象
cursor = db.cursor()# 构造一个sql语句来查询统计数据
sql_str = "SELECT PROD_CATEGORY as 产品分类, ROUND(SUM(PRICE),2) as 总销售额, ROUND(SUM(PROFIT),2) as 总利润额 FROM orders WHERE FY=2019 GROUP BY PROD_CATEGORY"# 执行sql语句
cursor.execute(sql_str)# 获取查询结果
result = cursor.fetchall()
df = pd.DataFrame(result, columns=[cursor.description[i][0] for i in range(len(cursor.description)) ])
print(df)
df.set_index('产品分类').plot(kind='pie',y='总利润额',#subplots=True, # 不使用y,画出所有列的饼图figsize=(8,8),)
显示百分比
import matplotlib.pyplot as pltsizes = df['总利润额']
labels = df['产品分类']
plt.figure(figsize=(5,5),dpi=120)
plt.pie(sizes, # 每个扇区大小labels=labels, # 每个扇区标签autopct='%.2f%%', # 计算百分比格式 %格式% %d%% 整数百分比 %.2f%% 小数点后保留2位的浮点数百分比)
饼图常见参数
扇区分离饼图
# 扇区分离
explode = [0 for i in range(len(sizes))]
explode[1]=0.1
plt.pie(sizes,labels=labels,explode=explode )plt.title("饼图示例1")
plt.show()
添加颜色
# 扇区颜色
colors=['r','g','b','#EEEEEE']
plt.pie(sizes,labels=labels,explode=explode,colors=colors )plt.title("饼图示例2")
plt.show()
添加阴影
# 添加阴影
shadow = True
plt.pie(sizes,explode=explode,labels=labels,colors=colors,shadow=shadow)
plt.show()
显示百分比
# 显示百分比
autopct='%.0f%%'
pctdistance=1.25
plt.pie(sizes,explode=explode,labels=labels,colors=colors,shadow=shadow,autopct=autopct,pctdistance=pctdistance)
plt.show()
控制起始角度
# 起始角度
startangle=36 # (->0, <-180, 逆时针)explode = [0 for i in range(len(sizes))]
explode[3]=0.1
shadow=False
plt.pie(sizes,explode=explode,labels=labels,colors=colors,shadow=shadow,autopct=autopct,startangle=startangle)
plt.show()
将饼图放置在坐标轴
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['figure.dpi'] = 120sizes = [10,10,10,70]
labels = ['A','B','C','D']figure = plt.figure(figsize=(5,5),facecolor='#CCCCCC')center=(5,4) # plt.title("饼图详解示例")
pieces,labelses,pcts = plt.pie(sizes,labels=labels,center=center,frame=True,labeldistance=0.88,autopct='%.1f%%')
pieces[3].set(color='grey')
labelses[3].set(color='red')
pcts[3].set(color='green')
双饼图显示
plt.rcParams['figure.dpi'] = 120
plt.figure(figsize=(8,4),facecolor='#EEEEEE')center1=(1,0)
center2=(2.5,0)plt.pie(sizes,explode=explode,labels=labels,colors=colors,shadow=False,autopct=autopct,radius=0.5,center=center1,frame=True,labeldistance=0.9,rotatelabels=True)
plt.pie(sizes,explode=explode,labels=labels,colors=colors,shadow=shadow,autopct=autopct,radius=0.5,center=center2,frame=True,labeldistance=0.9,rotatelabels=False)
plt.show()
饼图万能模板
import matplotlib.pyplot as plt
# 添加数据
sizes = [15, 30, 45, 10]
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
# 配置颜色
colors = ['yellowgreen', 'gold', 'lightskyblue', 'lightcoral']
# 配置
explode = (0, 0.1, 0, 0)
plt.pie(sizes, explode=explode, labels=labels, colors=colors,autopct='%1.1f%%', shadow=True, startangle=90)
plt.axis('equal')
# 设置全局中文字体
plt.rcParams['font.sans-serif'] = 'KaiTi' # 设置全局字体为中文 楷体
plt.rcParams['axes.unicode_minus'] = False # 不使用中文减号
# 设置图形上的各类主题值
# plt.suptitle('饼图',size=15,y=1.0)
plt.title("饼图", loc='center',size=15,y=1)plt.title("王小王-123于2022年3月绘制", loc='right',size=10,y=1)plt.show()
每文一语
~~~~~~~
matplotlib绘制饼图之基本配置——万能模板案例相关推荐
- matplotlib绘制直方图之基本配置——万能模板案例
目录 直方图介绍 绘制直方图的参数(plt.hist()) 连接数据库进行直方图绘制案例 使用dataframe里面的plot函数进行绘制(万能模板) 绘制多个子图(多子图直方图案例模板) 概率分布直 ...
- matplotlib绘制散点图之基本配置——万能模板案例
目录 散点图 散点图一行代码显示 加颜色的散点图 颜色深浅表示数值大小 散点图显示颜色和大小 自定义图表散点图 散点图万能模板 其他模板 每文一语 散点图 散点图是指在回归分析中,数据点在直角坐标系平 ...
- matplotlib绘制柱状图之基本配置——万能模板案例
目录 连接数据库案例 柱状图绘制 堆叠柱状图--尾部 堆叠柱状图--头部 双维柱状图模板 每文一语 连接数据库案例 import pymysql # pip install pymysql安装,用来连 ...
- matplotlib绘制雷达图之基本配置——万能模板案例
目录 介绍 应用场景 案例一(成绩雷达图重叠) 案例二(成绩雷达图左右图) 极坐标 每文一语 介绍 雷达图是以从同一点开始的轴上表示的三个或更多个定量变量的二维图表的形式显示多变量数据的图形方法.轴的 ...
- Python matplotlib绘制饼图
Python matplotlib绘制饼图 继前面使用matplotlib绘制折线图.散点图.柱状图和直方图,本篇文章继续介绍使用matplotlib绘制饼图. 一.matplotlib绘制饼图 # ...
- matplotlib绘制饼图
Python数据可视化中在用matplotlib解决问题的时候,通常会遇到以下一些问题: 1.离散型数据都有哪些可用的可视化方法 2.数值型的单变量可用哪些图形展示 3.多维数据之间的图形展现 4.如 ...
- python绘制饼图程序_python使用Matplotlib绘制饼图
一.函数原型 plt.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=Fals ...
- python饼图显示百分比怎么设置_python使用Matplotlib绘制饼图
一.函数原型 plt.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=Fals ...
- python利用matplotlib做饼图_python利用matplotlib库绘制饼图的方法示例
介绍 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中. 它的文档相当 ...
最新文章
- 通过网络安装VMware ESX Server 5
- PAT甲级1147 Heaps (30 分):[C++题解]堆、树的遍历、dfs、完全二叉树建树
- leetcode049. 最后一块石头的重量 II
- stylus之内置方法(Built-in Functions)
- C# 读取app.config配置文件 节点键值,提示 配置系统未能初始化 错误的解决方案...
- java数组更新_java刷新数组到jList
- IDEA导入Gradle项目后,重现构建项目并导入jar包后但是External Libraries目录中无任何引入的jar包
- 菜鸟的学习之路(9) — ArrayList类
- 图说单播,组播,广播,选播和地域播
- tar.bz2 解压命令
- opencv安装教程
- 谷歌浏览器无法连接到网络的解决办法
- python模拟键盘操作
- NAS 层架构_01
- 漫天杂想系列之五:2018年总结
- win10照片文件夹里面图片,突然不显示缩略图
- Banana Pi 消息
- [前端] HTML,CSS,font-family:中文字体的英文名称 (宋体 微软雅黑)
- windows企微应用双开/多开
- 使用conda卸载pytorch_centos下通过conda安装pytorch
热门文章
- 计算机老师给新生的第一堂课怎么讲,新老师如何讲好第一堂课?看这篇就够了!...
- A段架構師的關鍵思考技術:戰術引導戰略
- Linux搭建迅搜( Xunsearch )
- 如何寻找出色的产品经理
- Linux SDIO WIFI Marvell8801/Marvell88w8801(五) --- Linux SDIO API介绍
- Unity角色模型由Generic改成Humanoid之后hips节点动画失效的问题
- 威胁快报|首爆,新披露Jenkins RCE漏洞成ImposterMiner挖矿木马新“跳板”
- 黑马程序员:移动web
- SIMetrix导入MOS管SPICE参数进行仿真的快速方法
- 万用表测占空比怎么接_如何使用万用表测量频率和占空比?