chart.js 饼图显示百分比_Python怎么画饼图?Matplotlib数据可视化004:饼图
前文回看:
【Python菜鳥進階大神】Matplotlib數據可視化001:基礎API匯總&散點圖
【Python菜鳥進階大神】Matplotlib數據可視化002:折線圖
【Python菜鳥進階大神】Matplotlib數據可視化003:條形圖
除了條形圖可以展示離散變量的情況,還有餅圖可以反映離散變量各自的占比情況。
餅圖API
官方文檔:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.pie.html?highlight=pie#matplotlib.pyplot.pie
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, rotatelabels=False, *, data=None)
x:指定繪圖的數據;
explode:指定餅圖某些部分的突出顯示,即呈現爆炸式;
labels:為餅圖添加標簽說明,類似于圖例說明;
colors:指定餅圖的填充色;
autopct:自動添加百分比顯示,可以采用格式化的方法顯示;
pctdistance:設置百分比標簽與圓心的距離;
shadow:是否添加餅圖的陰影效果;
labeldistance:設置各扇形標簽(圖例)與圓心的距離;
startangle:設置餅圖的初始擺放角度;
radius:設置餅圖的半徑大小;
counterclock:是否讓餅圖按逆時針順序呈現;
wedgeprops:設置餅圖內外邊界的屬性,如邊界線的粗細、顏色等;
textprops:設置餅圖中文本的屬性,如字體大小、顏色等;
center:指定餅圖的中心點位置,默認為原點
frame:是否要顯示餅圖背后的圖框,如果設置為True的話,需要同時控制圖框x軸、y軸的范圍和餅圖的中心位置;
# 構造數據data = [0.2515,0.3724,0.3336,0.0368,0.0057]clas= ['A','B','C','D','E']explode = [0,0.1,0,0,0] # 用于突出顯示大專學歷人群colors=['blue','red','yellow','green','pink'] # 自定義顏色# 中文亂碼和坐標軸負號的處理plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']plt.rcParams['axes.unicode_minus'] = False# 繪制餅圖plt.pie(x = data, # 繪圖數據 explode=explode, # 突出分裂的部分 labels=clas, # 添加分類標簽 colors=colors, # 設置餅圖的自定義填充色 autopct='%.1f%%', # 設置百分比的格式,這里保留一位小數 pctdistance=0.6, # 設置百分比標簽與圓心的距離 labeldistance = 1.15, # 設置各標簽與圓心的距離 startangle = 180, # 設置餅圖的初始角度 radius = 2, # 設置餅圖的半徑 counterclock = False, # 是否逆時針,這里設置為順時針方向 wedgeprops = {'linewidth': 1.3, 'edgecolor':'green'},# 設置餅圖內外邊界的屬性值 textprops = {'fontsize':15, 'color':'k'}, # 設置文本標簽的屬性值 center = (0.5,0.5), # 設置餅圖的原點 frame = 0 )# 是否顯示餅圖的圖框,這里設置顯示環狀餅圖import matplotlib as mplimport matplotlib.pyplot as plt# 設置圖片大小plt.figure(figsize = (10, 10))# 生成數據labels = ['A', 'B', 'C', 'D', '其他']share_laptop = [0.45, 0.25, 0.15, 0.05, 0.10]share_pc = [0.35, 0.35, 0.08, 0.07, 0.15]colors = ['blue','red','yellow','green','pink']# 外環wedges1, texts1, autotexts1=plt.pie(share_laptop, autopct = '%3.1f%%', radius = 1, pctdistance = 0.85, colors = colors, startangle = 180, textprops = {'color': 'k'}, wedgeprops = {'width': 0.3, 'edgecolor': 'w'})# 內環wedges2, texts2, autotexts2=plt.pie(share_pc, autopct = '%3.1f%%', radius = 0.7, pctdistance = 0.75, colors = colors, startangle = 180, textprops = {'color': 'k'}, wedgeprops = {'width': 0.3, 'edgecolor': 'k'})# 圖例plt.legend(wedges1, labels, fontsize = 12, title = '公司列表', loc = 'best', bbox_to_anchor = (0.9, 0.6))# 設置文本樣式plt.setp(autotexts1, size=13, weight='bold')plt.setp(autotexts2, size=13, weight='bold')# plt.setp(r1, size=15)# 標題plt.title('2017年xxx市場份額', fontsize=20)plt.show()原文鏈接:
網頁鏈接?mp.weixin.qq.com還有好多,原文鏈接查看歷史文章
總結
以上是生活随笔為你收集整理的chart.js 饼图显示百分比_Python怎么画饼图?Matplotlib数据可视化004:饼图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python运行界面英文翻译_pytho
- 下一篇: asp.net web开发框架_百小僧: