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()

运行结果:

python编写直方图和饼图_第1张图片

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()

运行结果:

python编写直方图和饼图_第2张图片

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

你可能感兴趣的:(python,开发语言)