日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Matplotlib - 饼图、环形图 pie() 多重饼图 subplots() 所有用法详解

發(fā)布時間:2024/7/5 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Matplotlib - 饼图、环形图 pie() 多重饼图 subplots() 所有用法详解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

基本用法?

餅圖中突出顯示某部分

環(huán)形圖(空心餅圖)

多重餅圖,并添加分割線


相較散點(diǎn)圖和折線圖,柱狀圖、餅圖、箱線圖是另外 3 種數(shù)據(jù)分析常用的圖形,主要用于分析數(shù)據(jù)內(nèi)部的分布狀態(tài)或分散狀態(tài)。餅圖主要用于查看各分組數(shù)據(jù)在總數(shù)據(jù)中的占比。

Matplotlib 中繪制餅圖的函數(shù)為 pie () ,使用語法如下:

plt.pie(x, explode=None, labels=None, colors=None,?autopct=None, pctdistance=0.6, shadow=False,?
? ? ? ? ? labeldistance=1.1, startangle=None,?radius=None, counterclock=True, wedgeprops=None,?
? ? ? ? ? textprops=None, center=(0, 0), frame=False)

常用參數(shù)及說明:

參數(shù)接收值說明默認(rèn)值
xarray繪圖的數(shù)據(jù);
explodearray餅圖中各個餅之間的間距;0
labelsstring圖例說明;
colorsstring指定餅圖的填充色;隨機(jī)色
autopctstring百分比顯示格式;None
pctdistance數(shù)值設(shè)置百分比標(biāo)簽與圓心的距離;0.6
shadowbool是否添加餅圖的陰影效果;FALSE
labeldistance數(shù)值設(shè)置各扇形標(biāo)簽(圖例)與圓心的距離;1.1
startangle數(shù)值設(shè)置餅圖的初始擺放角度;0
radius數(shù)值設(shè)置餅圖的半徑大小;None
counterclockbool是否讓餅圖按逆時針順序呈現(xiàn);TRUE
wedgepropsstring設(shè)置餅圖內(nèi)外邊界的屬性,如邊界線的粗細(xì)、顏色等;None
textpropsstring設(shè)置餅圖中文本的屬性,如字體大小、顏色等;None
center坐標(biāo)指定餅圖的中心點(diǎn)位置原點(diǎn)(0, 0)
framebool是否要顯示餅圖背后的圖框,如果設(shè)置為True的話,需要同時控制圖框x軸、y軸的范圍和餅圖的中心位置;FALSE

基本用法?

import pandas as pd import matplotlib.pyplot as plt#讀取數(shù)據(jù) datafile = u'D:\\pythondata\\learn\\matplotlib.xlsx' data = pd.read_excel(datafile) #取dataframe中的最后一行的數(shù)據(jù)畫餅圖 x = data[data['時間']==2018].iloc[:,1:].values.tolist()[0]plt.figure(figsize=(5,5))#設(shè)置畫布的尺寸 plt.title('Examples of Pie Graph',fontsize=20)#標(biāo)題,并設(shè)定字號大小 labels = 'Jay income','JJ income','Jolin income','Hannah income'#圖例 colors = ['hotpink','slateblue','goldenrod','olivedrab']#startangle:從90度的位置開始畫第一個餅圖;autopct:顯示一位小數(shù);其他參數(shù)使用默認(rèn)值 plt.pie(x,labels=labels,colors = colors, startangle=90,autopct='%1.1f%%')plt.show()#顯示圖像

餅圖中突出顯示某部分

?通過參數(shù) explode 來實(shí)現(xiàn):

import pandas as pd import matplotlib.pyplot as plt#讀取數(shù)據(jù) datafile = u'D:\\pythondata\\learn\\matplotlib.xlsx' data = pd.read_excel(datafile) #取dataframe中的最后一行的數(shù)據(jù)畫餅圖 x = data[data['時間']==2018].iloc[:,1:].values.tolist()[0]plt.figure(figsize=(5,5))#設(shè)置畫布的尺寸 plt.title('Examples of Pie Graph',fontsize=20)#標(biāo)題,并設(shè)定字號大小 labels = 'Jay income','JJ income','Jolin income','Hannah income'#圖例 colors = ['hotpink','slateblue','goldenrod','olivedrab'] explodes = (0,0,0.1,0)#突出顯示Jolin income這部分的餅圖plt.pie(x,explode = explodes, labels=labels,colors = colors, startangle=90,autopct='%1.1f%%')plt.show()#顯示圖像

環(huán)形圖(空心餅圖)

import pandas as pd import matplotlib.pyplot as plt#讀取數(shù)據(jù) datafile = u'D:\\pythondata\\learn\\matplotlib.xlsx' data = pd.read_excel(datafile) #取dataframe中的最后一行的數(shù)據(jù)畫餅圖 x = data[data['時間']==2018].iloc[:,1:].values.tolist()[0] x_0 = [1,0,0,0]#用于顯示空心plt.figure(figsize=(5,5))#設(shè)置畫布的尺寸 labels = 'Jay income','JJ income','Jolin income','Hannah income'#圖例 colors = ['hotpink','slateblue','goldenrod','olivedrab']plt.pie(x , radius=1.0,pctdistance = 0.8,labels=labels,colors = colors, startangle=90,autopct='%1.1f%%') plt.pie(x_0, radius=0.6,colors = 'w')plt.show()#顯示圖像

?

多重餅圖,并添加分割線

import numpy as np import pandas as pd import matplotlib.pyplot as pltdatafile = u'D:\\pythondata\\learn\\matplotlib.xlsx' data = pd.read_excel(datafile) x1 = data[data['時間']==2005].iloc[:,1:].values.tolist()[0]#多重餅圖第一層數(shù)據(jù) x2 = data[data['時間']==2010].iloc[:,1:].values.tolist()[0]#多重餅圖第二層數(shù)據(jù)fig,ax = plt.subplots() colors = ['hotpink','slateblue','goldenrod','olivedrab'] labels = 'Jay income','JJ income','Jolin income','Hannah income'#圖例 pie_1 = ax.pie(x1,startangle=90,autopct='%1.1f%%',radius=1.5,pctdistance = 0.9,colors=colors, labels=labels) pie_2 = ax.pie(x2,startangle=90,autopct='%1.1f%%',radius=1.2,pctdistance = 0.6,colors=colors)#添加多重餅圖的分割線 for pie_wedge in pie_1[0]:pie_wedge.set_edgecolor('black') for pie_wedge in pie_2[0]:pie_wedge.set_edgecolor('black')ax.set(aspect="equal") plt.show()#顯示圖表

?

?

?

總結(jié)

以上是生活随笔為你收集整理的Matplotlib - 饼图、环形图 pie() 多重饼图 subplots() 所有用法详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。