python编写直方图和饼图

1.直方图

# 直方图的绘制
# 语法格式:plt.hist(x,bins),其中x:数据集;bins:统计数据的分布区间
import matplotlib.pyplot as plt
import pandas as pd



# 导入文件
excel = pd.read_excel('成绩.xlsx')
# print(excel)
# 避免乱码
plt.rcParams['font.sans-serif'] = ['SimHei']
x = excel['总分']
bins = [240,260,280,300,320,340,360,400]
plt.hist(x,bins=bins)
# 设置坐标轴的标题
plt.ylabel('人数')

# 设置标题
plt.title('成绩')
plt.show()

运行结果:

2.饼图

# 饼形图:常用来显示各个部分在整体所占的比例。
# 语法格式:plt.pie(x,labels,colors,labeldistance,autopct,startangle,radius,center,textprops)
# 参数说明:x:每一块饼形图的比例	labels:每一块饼形图外侧显示的说明文字 labeldistance:标记的绘制位置,相对于半径的比例,默认值为1.1
# autopct:设置饼图百分比,可以使用格式化字符串或format函数 startangle:起始绘制角度,默认是x轴正方向逆时针画起.radius:饼图半径,默认值为1
# center:浮点类型的列表,可选参数,默认值为(0.0)表示图表中心位置 textprops:设置标签和比例文字的格式,字典类型
import matplotlib.pyplot as plt
import pandas as pd

# 导入文件
excel = pd.read_excel('成绩.xlsx')
# print(excel)
# 避免乱码
plt.rcParams['font.sans-serif'] = ['SimHei']
x = excel['语文']
label = excel['姓名']
plt.pie(x, labels=label, autopct='%1.1f%%',labeldistance=1.1,shadow=True,startangle=90)
# 保证是圆形
plt.axis('equal')
# 增加标题
plt.title('语文成绩')
plt.show()

运行结果:

3.excel数据如下:

姓名   语文   英语   数学   总分
张三    110   120     130     360
李四    120   108     120    348
张五     88     90       90     268
张六     110   108     76     294
张齐     120   98       90     308
张巴      78    108     118   304
张久      96    130      67    293
张史     130    76       86    292
张怡      88     96      140   324
张儿      99    110     110    319

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值