利用Tkinter和matplotlib两种方式画饼状图的实例

时间:2021-05-22

当我们学习python的时候,总会用到一些常用的模块,接下来我就详细讲解下利用两种不同的方式画饼状图。
首先利用【Tkinter】中的canvas画布来画饼状图:

from tkinter import Tk, Canvasdef DrawPie(): #创建窗口 windows=Tk() #添加标题 windows.title("画饼图") # 设置画布样式 canvas=Canvas(windows,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=36,fill="red") canvas.create_arc(400,400,100,100,start=36,extent=72,fill="green") canvas.create_arc(400,400,100,100,start=108,extent=108,fill="yellow") canvas.create_arc(400,400,100,100,start=216,extent=144,fill="blue") # 为各个扇形添加内容,圆心为(250,250) canvas.create_text(430,200,text="36°",font=("华文新魏",20)) canvas.create_text(330,100,text="72°",font=("华文新魏",20)) canvas.create_text(90,200,text="108°",font=("华文新魏",20)) canvas.create_text(390,370,text="144°",font=("华文新魏",20)) # 开启消息循环 windows.mainloop()if __name__ == '__main__':  #调用方法 DrawPie()

以上方法就是用的Tkinter画布来画饼状图的,接下来我们来看下第三方模块【matplotlib】中的pyplot:

from matplotlib import pyplot# 中文支持pyplot.rcParams['font.sans-serif'] = ['SimHei']# 用来正常显示中文标签pyplot.rcParams['axes.unicode_minus'] = False # 用来正常显示负号def showPieChart(): #调用pyplot模块中的pie方法绘制饼图,pie方法的第一个参数是各个部分所占的比例,后面其他的参数是对饼形图的一些修饰的标签,labels为描述的内容,startangle为绘制的起始角度,counterclock为绘制的方向(默认为逆时针) pyplot.pie([36,72,108,144], labels=["36°", "72°", "108°", "144°"], startangle=90, counterclock=False) #显示图形 pyplot.show()if __name__ == '__main__':   #调用函数 showPieChart()

其实两种方法都大同小异,只不过应用的模块不一样,第一种方法只能绘制图形不能添加饼图的内容,而第二种方法内部封装的饼形图的样式,可以添加的样式也丰富多彩。

以上这篇利用Tkinter和matplotlib两种方式画饼状图的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章