利用Tkinter和matplotlib兩種方式畫(huà)餅狀圖的實(shí)例
當(dāng)我們學(xué)習(xí)python的時(shí)候,總會(huì)用到一些常用的模塊,接下來(lái)我就詳細(xì)講解下利用兩種不同的方式畫(huà)餅狀圖。
首先利用【Tkinter】中的canvas畫(huà)布來(lái)畫(huà)餅狀圖:
from tkinter import Tk, Canvas def DrawPie(): #創(chuàng)建窗口 windows=Tk() #添加標(biāo)題 windows.title("畫(huà)餅圖") # 設(shè)置畫(huà)布樣式 canvas=Canvas(windows,height=500,width=500) # 將畫(huà)布打包到窗口 canvas.pack() #利用畫(huà)布的create_arc畫(huà)餅形,(400,400)和(100,100)為餅形外圍的矩形, # start=角度起始,extent=旋轉(zhuǎn)的度數(shù),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") # 為各個(gè)扇形添加內(nèi)容,圓心為(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)) # 開(kāi)啟消息循環(huán) windows.mainloop() if __name__ == '__main__': #調(diào)用方法 DrawPie()
以上方法就是用的Tkinter畫(huà)布來(lái)畫(huà)餅狀圖的,接下來(lái)我們來(lái)看下第三方模塊【matplotlib】中的pyplot:
from matplotlib import pyplot # 中文支持 pyplot.rcParams['font.sans-serif'] = ['SimHei'] # 用來(lái)正常顯示中文標(biāo)簽 pyplot.rcParams['axes.unicode_minus'] = False # 用來(lái)正常顯示負(fù)號(hào) def showPieChart(): #調(diào)用pyplot模塊中的pie方法繪制餅圖,pie方法的第一個(gè)參數(shù)是各個(gè)部分所占的比例,后面其他的參數(shù)是對(duì)餅形圖的一些修飾的標(biāo)簽, labels為描述的內(nèi)容,startangle為繪制的起始角度,counterclock為繪制的方向(默認(rèn)為逆時(shí)針) pyplot.pie([36,72,108,144], labels=["36°", "72°", "108°", "144°"], startangle=90, counterclock=False) #顯示圖形 pyplot.show() if __name__ == '__main__': #調(diào)用函數(shù) showPieChart()
其實(shí)兩種方法都大同小異,只不過(guò)應(yīng)用的模塊不一樣,第一種方法只能繪制圖形不能添加餅圖的內(nèi)容,而第二種方法內(nèi)部封裝的餅形圖的樣式,可以添加的樣式也豐富多彩。
以上這篇利用Tkinter和matplotlib兩種方式畫(huà)餅狀圖的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- 用matplotlib畫(huà)等高線圖詳解
- Python實(shí)戰(zhàn)小程序利用matplotlib模塊畫(huà)圖代碼分享
- matplotlib在python上繪制3D散點(diǎn)圖實(shí)例詳解
- Python數(shù)據(jù)可視化編程通過(guò)Matplotlib創(chuàng)建散點(diǎn)圖代碼示例
- python學(xué)習(xí)之matplotlib繪制散點(diǎn)圖實(shí)例
- python Matplotlib畫(huà)圖之調(diào)整字體大小的示例
- 基于Python數(shù)據(jù)可視化利器Matplotlib,繪圖入門(mén)篇,Pyplot詳解
- Python通過(guò)matplotlib畫(huà)雙層餅圖及環(huán)形圖簡(jiǎn)單示例
相關(guān)文章
Python?pyasn庫(kù)解析和生成ASN.1數(shù)據(jù)結(jié)構(gòu)
這篇文章主要介紹了Python?pyasn庫(kù)實(shí)現(xiàn)ASN.1數(shù)據(jù)結(jié)構(gòu)的解析和生成實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01pycharm中django框架連接mysql數(shù)據(jù)庫(kù)的方法
這篇文章主要介紹了pycharm中django框架連接mysql數(shù)據(jù)庫(kù)的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04python把ipynb文件轉(zhuǎn)換成pdf文件過(guò)程詳解
這篇文章主要介紹了用python把ipynb文件轉(zhuǎn)換成pdf文件過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07Python通過(guò)future處理并發(fā)問(wèn)題
這篇文章主要介紹了Python通過(guò)future處理并發(fā)問(wèn)題,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-10-10