参考资料:https://jingyan.baidu.com/article/8275fc864ce23946a03cf698.html 百度经验
1利用matplotlib
import matplotlib.pyplot as plt
labels='a','b','c','d'
sizes=5,6,7,8
colors='lightgreen','gold','lightskyblue','lightcoral'
explode=0,0,0,0 # 1表示分开
plt.pie(sizes,explode=explode,labels=labels,
colors=colors,autopct='%1.1f%%',shadow=True,startangle=50)
plt.axis('equal')
plt.show()
2.tkinter实现
from tkinter import *
window=Tk()
canvas=Canvas(window,height=500,width=500)
canvas.pack()
#利用画布的create_arc画饼形,(400,400)和(100,100)为饼形外围的矩形,
# start=角度起始,extent=旋转的度数,fill=填充的颜色
canvas.create_arc(400,400,100,100,start=0,extent=360/10*2,fill="red")
canvas.create_arc(400,400,100,100,start=360/5,extent=360/10,fill="green")
canvas.create_arc(400,400,100,100,start=360/10*3,extent=360/10*3,fill="yellow")
canvas.create_arc(400,400,100,100,start=360/10*6,extent=360/10*4,fill="blue")
# 为各个扇形添加内容,圆心为(250,250)
canvas.create_text(430,200,text="课题-20%",font=("华文新魏",20))
canvas.create_text(330,100,text="测验-10%",font=("华文新魏",20))
canvas.create_text(90,200,text="期中考试-30%",font=("华文新魏",20))
canvas.create_text(390,370,text="期末考试-40%",font=("华文新魏",20))
window.mainloop()