使用Python的matplotlib库绘制饼状图非常方便,只需要提供数据,就可以把图画出来
import matplotlib.pyplot as plt
data = [89,95,60]
labels = ['甲','乙','丙']
plt.pie(data, autopct='%.2f%%',labels=labels)
plt.legend()
plt.show()
但是在我们使用过程中常常碰到因数据过小而导致的字体重叠。
这时我们可以添加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()
这样问题得到了有效解决。
实际上我们再添加一个参数explode,该参数表示(每一块)离开中心距离。
plt.pie(data, autopct='%.2f%%',labels=labels,pctdistance=0.9,explode=(0,0,0,0.4,0.2))
绘制的图如下,相当于把较小的部分抠了出来。