Python画饼状图解决字体重叠问题

使用Python的matplotlib库绘制饼状图非常方便,只需要提供数据,就可以把图画出来

import matplotlib.pyplot as plt

data = [89,95,60]
labels = ['甲','乙','丙']
plt.pie(data, autopct='%.2f%%',labels=labels)

plt.legend()
plt.show()

Python画饼状图解决字体重叠问题_第1张图片

但是在我们使用过程中常常碰到因数据过小而导致的字体重叠。

Python画饼状图解决字体重叠问题_第2张图片

这时我们可以添加pctdistance参数,该参数可以认为是图中百分比距离圆心的距离。

import matplotlib.pyplot as plt

data = [89,95,60,2,4]
labels = ['甲','乙','丙','丁','戊']
plt.pie(data, autopct='%.2f%%',labels=labels,pctdistance=0.9)

plt.legend()
plt.show()

这样问题得到了有效解决。

Python画饼状图解决字体重叠问题_第3张图片

实际上我们再添加一个参数explode,该参数表示(每一块)离开中心距离。

plt.pie(data, autopct='%.2f%%',labels=labels,pctdistance=0.9,explode=(0,0,0,0.4,0.2))

绘制的图如下,相当于把较小的部分抠了出来。

Python画饼状图解决字体重叠问题_第4张图片

你可能感兴趣的:(Python)