使用matplotlib制作饼图的时候,标签和百分比数值的位置是可以单独调整的,但是调整后百分比会和标签重叠,我想实现的效果是标签在上,百分比在标签下方,并且中间间隔一定的距离,如下示意:
希望标签A、标签B这些在上面,22%、29%这些百分比数值在对应的标签下方,并且有一定间隔(视觉引导线可去掉)
请问各位,有啥方法可以实现吗?谢谢~~
使用matplotlib制作饼图的时候,标签和百分比数值的位置是可以单独调整的,但是调整后百分比会和标签重叠,我想实现的效果是标签在上,百分比在标签下方,并且中间间隔一定的距离,如下示意:
希望标签A、标签B这些在上面,22%、29%这些百分比数值在对应的标签下方,并且有一定间隔(视觉引导线可去掉)
请问各位,有啥方法可以实现吗?谢谢~~
你可以关闭掉 autopct,直接自行组织百分比数字到 labels 内,例如
import matplotlib.pyplot as plt
import numpy as np
a = [35, 25, 25, 15]
labels = ['aaa\n\n{:.2f}%'.format(a[0]/sum(a)*100)
,'bbb\n\n{:.2f}%'.format(a[1]/sum(a)*100)
,'ccc\n\n{:.2f}%'.format(a[2]/sum(a)*100)
,'ddd\n\n{:.2f}%'.format(a[3]/sum(a)*100)
]
y = np.array(a)
plt.pie(y,labels=labels,labeldistance=1.3)
plt.show()