柱状图主要使用pie()函数,基本格式如下:
plt.pie(x,explode=None,labels=None,colors=None,autopcts=None,pctdistance=0.6,shadow=False,labeldistance=1.1,staatangle=None,radius=None,counterclock=True,wedgeprops=None,textprops=None,center=(0,0),frame=False,rotatelabels=False,hold=None,data=None)
主要参数:
x:每块饼图的比例,如果sum(x)>1,则会sum重新计算后归一化
explode:每块饼图离中心的距离
labels:每块饼图的说明文字
autopct:设置百分比
shadow:是否有阴影效果
pctdistance:指定百分比的位置刻度,默认为0.6
labeldistance:标记的绘制位置,相对于半径的比例,如果<1,则绘制在饼图内部
radius:饼图半径,默认为1
counterclock:指针方向,默认为True逆时针,False为顺时针
示例:
import pandas as pd
import matplotlib.pyplot as pltpath='C:\\Users\\86185\\PycharmProjects\\pythonProject\\practice\\'
file=('bingtu.xlsx')
path_file=path+file
plt.rcParams['font.sans-serif']=['SimHei']dt = pd.read_excel(path_file, sheet_name=0)
x=dt['来源']
h=dt['数量']
color=['red','yellow','blue','green','pink','gold','cyan','magenta']plt.pie(h,labels=x,colors=color,labeldistance=1.02,autopct='%.1f%%',startangle=90,radius=0.5,center=(0.2,0.2),textprops={'fontsize':9,'color':'k'},pctdistance=0.6)
plt.axis('equal')
plt.title('分布占比')
plt.show()