python绘制饼图的如何设置高度宽度_python 用 matplotlib 饼图参数详解 plt.pie()
defax_set_title(s):
ax.set_title(label=f'No.{i+1}\n'+s, #標題的文本內(nèi)容
loc='right', #標題的位置
family='Arial', #標題文本的字體類型
size=13, #字體大小
)#配置字體,顯示中文
mpl.rcParams['font.sans-serif'] = ['SimHei']#配置坐標軸刻度值模式,顯示負號
mpl.rcParams['axes.unicode_minus'] =False#定義數(shù)據(jù)
cnt_pct = [0.35, 0.15, 0.20, 0.30]
cs= ['red', 'orange', 'yellow', 'green']
labs= [f'{e.upper()} 難度水平' for e in 'abcd']
explode= (0.1, 0.1, 0.1, 0.1)#初始化圖表區(qū)
fig, axes = plt.subplots(nrows=4,
ncols=5,
figsize=(16, 12),
facecolor='cornsilk')
axes=axes.ravel()#選擇子區(qū) 1
i =0
ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
)## 設(shè)置標題
ax_set_title(s='x')#選擇子區(qū) 2
i = 1ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
)## 設(shè)置標題
ax_set_title(s='explode')#選擇子區(qū) 3
i = 2ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
)## 設(shè)置標題
ax_set_title(s='labels')#選擇子區(qū) 4
i = 3ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
)## 設(shè)置標題
ax_set_title(s='colors')## 設(shè)置標題
ax_set_title(s='labels')#選擇子區(qū) 5
i = 4ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
)## 設(shè)置標題
ax_set_title(s='autopct')#選擇子區(qū) 6
i = 5ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.8, #鍥形塊數(shù)據(jù)標注的徑向距離
)## 設(shè)置標題
ax_set_title(s='pctdistance')#選擇子區(qū) 7
i = 6ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.8, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
)## 設(shè)置標題
ax_set_title(s='shadow')#選擇子區(qū) 8
i = 7ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.8, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=1.02, #鍥形塊標簽的徑向距離
)## 設(shè)置標題
ax_set_title(s='labeldistance')#選擇子區(qū) 9
i = 8ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
)## 設(shè)置標題
ax_set_title(s='startangle')#選擇子區(qū) 10
i = 9ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
)## 設(shè)置標題
ax_set_title(s='radius')#選擇子區(qū) 11
i = 10ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
)## 設(shè)置標題
ax_set_title(s='counterclock')#選擇子區(qū) 12
i = 11ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
#鍥形塊邊界屬性字典
wedgeprops={'edgecolor': 'silver',}
)## 設(shè)置標題
ax_set_title(s='edgecolor')#選擇子區(qū) 13
i = 12ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
#鍥形塊邊界屬性字典
wedgeprops={'edgecolor': 'silver','linewidth': 3,
}
)## 設(shè)置標題
ax_set_title(s='linewidth')#選擇子區(qū) 14
i = 13ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
#鍥形塊邊界屬性字典
wedgeprops={'edgecolor': 'silver','linewidth': 3,'linestyle': ':'}
)## 設(shè)置標題
ax_set_title(s='linestyle')#選擇子區(qū) 15
i = 14ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
#鍥形塊邊界屬性字典
wedgeprops={'edgecolor': 'silver','linewidth': 3,'linestyle': ':'},#鍥形塊標簽文本和數(shù)據(jù)標注文本的字體屬性
textprops=dict(color='blue') #字體顏色
)## 設(shè)置標題
ax_set_title(s='fontcolor')#選擇子區(qū) 16
i = 15ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
#鍥形塊邊界屬性字典
wedgeprops={'edgecolor': 'silver','linewidth': 1,'linestyle': '-'},#鍥形塊標簽文本和數(shù)據(jù)標注文本的字體屬性
textprops=dict(color='k', #字體顏色
fontsize=14,
)
)## 設(shè)置標題
ax_set_title(s='fontsize')#選擇子區(qū) 17
i = 16ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
#鍥形塊邊界屬性字典
wedgeprops={'edgecolor': 'silver','linewidth': 1,'linestyle': '-'},#鍥形塊標簽文本和數(shù)據(jù)標注文本的字體屬性
textprops=dict(color='k', #字體顏色
fontsize=12,
),
rotatelabels=True #是否旋轉(zhuǎn)鍥形塊的標簽與其角度對應(yīng)
)## 設(shè)置標題
ax_set_title(s='rotatelabels')#選擇子區(qū) 18
i = 17ax=axes[i]## 設(shè)置子區(qū)背景色
ax.set_facecolor('cornsilk')#選擇子區(qū) 19
i = 18ax=axes[i]## 設(shè)置子區(qū)背景色
ax.set_facecolor('cornsilk')#選擇子區(qū) 20
i = 19ax=axes[i]## 繪制餅圖
ax.pie(x=cnt_pct, #產(chǎn)生鍥形塊的數(shù)據(jù)
explode=explode, #鍥形塊分離距離序列
labels=labs, #鍥形塊標簽列表
colors=cs, #鍥形塊的顏色列表
autopct='%3.1f%%', #鍥形塊的數(shù)據(jù)標注格式 (88.8%)
pctdistance=0.5, #鍥形塊數(shù)據(jù)標注的徑向距離
shadow=True,
labeldistance=0.9, #鍥形塊標簽的徑向距離
startangle=90, #餅圖的初始擺放角度
radius=1.2, #餅圖半徑
counterclock=False, #是否讓餅圖按逆時針順序呈現(xiàn)
#鍥形塊邊界屬性字典
wedgeprops={'edgecolor': 'silver','linewidth': 1,'linestyle': '-'},#鍥形塊標簽文本和數(shù)據(jù)標注文本的字體屬性
textprops=dict(color='k', #字體顏色
fontsize=12,
),
frame=True, #是否繪制框架
rotatelabels=False #是否旋轉(zhuǎn)鍥形塊的標簽與其角度對應(yīng)
)## 設(shè)置標題
ax_set_title(s='frame')## 設(shè)置子區(qū)背景色
ax.set_facecolor('cornsilk')#設(shè)置整個子區(qū)的布局
fig.subplots_adjust(left=0,
bottom=0,
right=0.9,
top=1,
wspace=0.2, #子區(qū)間空白區(qū)域的寬度的歸一化值
hspace=0.3); #子區(qū)間空白區(qū)域的高度的歸一化值
plt.savefig('pie.jpg')
總結(jié)
以上是生活随笔為你收集整理的python绘制饼图的如何设置高度宽度_python 用 matplotlib 饼图参数详解 plt.pie()的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言知识点总结:指针
- 下一篇: 畅游Python 二十一:Web框架 -