python通過matplotlib生成復(fù)合餅圖
更新時間:2020年02月06日 10:50:59 作者:imakeithappen
這篇文章主要介紹了python通過matplotlib生成復(fù)合餅圖,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
可以通過matplotlib實現(xiàn)
from matplotlib.patches import ConnectionPatch
#制畫布fig = plt.figure(figsize=(9,5.0625))
ax1 = fig.add_subplot(121)
ax2 = fig.add_subplot(122)
fig.subplots_adjust(wspace=0)
#大餅圖的制作
labels = newdata8.index
size = newdata8.quantity
explode=(0,0,0,0,0,0.1)
ax1.pie(size, autopct='%1.1f%%',startangle=30,labels=labels,explode=explode)
#小餅圖的制作
labels2 = others.index
size2 = others.quantity
width=0.2
ax2.pie(size2, autopct='%1.1f%%',startangle=90,labels=labels2,
radius=0.5,shadow=True)
#使用ConnectionPatch畫出兩個餅圖的間連線
#先得到餅圖邊緣的數(shù)據(jù)
theta1, theta2 = ax1.patches[5].theta1, ax1.patches[5].theta2
center, r = ax1.patches[5].center,ax1.patches[5].r
#畫出上邊緣的連線
x = r*np.cos(np.pi/180*theta2)+center[0]
y = np.sin(np.pi/180*theta2)+center[1]
con = ConnectionPatch(xyA=(-width/2,0.5),xyB=(x,y),
coordsA='data', coordsB='data',axesA=ax2,axesB=ax1)
con.set_linewidth(2)
con.set_color=([0,0,0])
ax2.add_artist(con)
#畫出下邊緣的連線
x = r*np.cos(np.pi/180*theta1)+center[0]
y = np.sin(np.pi/180*theta1)+center[1]
con = ConnectionPatch(xyA=(-width/2,-0.5),xyB=(x,y),
coordsA='data', coordsB='data',axesA=ax2,axesB=ax1)
con.set_linewidth(2)
con.set_color=([0,0,0])
ax2.add_artist(con)
plt.show()
輸出:

圖源數(shù)據(jù)為快餐店銷量
總結(jié)
以上所述是小編給大家介紹的python通過matplotlib實現(xiàn)生成復(fù)合餅圖,希望對大家有所幫助!
相關(guān)文章
python實現(xiàn)文件+參數(shù)發(fā)送request的實例代碼
這篇文章主要介紹了python實現(xiàn)文件+參數(shù)發(fā)送request的實例代碼,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01
Python實現(xiàn)的隨機森林算法與簡單總結(jié)
這篇文章主要介紹了Python實現(xiàn)的隨機森林算法,結(jié)合實例形式詳細分析了隨機森林算法的概念、原理、實現(xiàn)技巧與相關(guān)注意事項,需要的朋友可以參考下2018-01-01
Python pandas之求和運算和非空值個數(shù)統(tǒng)計
數(shù)據(jù)處理的過程中經(jīng)常會遇到判斷空值和求和運算的需求,所以下面這篇文章主要給大家介紹了關(guān)于Python pandas之求和運算和非空值個數(shù)統(tǒng)計的相關(guān)資料,需要的朋友可以參考下2021-08-08
簡單了解Python3 bytes和str類型的區(qū)別和聯(lián)系
這篇文章主要介紹了簡單了解Python3 bytes和str類型的區(qū)別和聯(lián)系,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-12-12
pandas如何將DataFrame?轉(zhuǎn)為txt文本去除引號
這篇文章主要介紹了pandas如何將DataFrame?轉(zhuǎn)為txt文本去除引號,文中補充介紹了DataFrame導(dǎo)CSV?txt?||?每行有雙引號的原因及解決辦法,感興趣的朋友跟隨小編一起看看吧2024-01-01

