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