python100天60pie函数画饼图基础介绍
从最简单的例子开始
import matplotlib.pyplot as plt import numpy as np y = np.array([35, 25, 25, 15]) plt.pie(y) plt.show()
正如上图所看到的一样,pie函数画为每个值画一个区别也叫wedge y有点像切蛋糕的一块,这个值是由数组 [35, 25, 25, 15] 来定义的加起来一共是 100
如果这些值加起来不是 100,会有什么效果呢 y = np.array([35, 25, 25, 10 ])y = np.array([35, 25, 25, 10])
这个饼图的起始位置 是哪儿呢
这个起始点,首先是圆心向右的直线,逆时针画各个值对应 的饼图
实际上各个饼图占据的是一个百分比,相信大家也猜出来了,,所以这些值的和是不是100不重要,因为饼 图实际也就是按百分比来画各个值的大小。x / sum( x1,x2,... xn )给各个饼图块添加标签
mylabels = ["Apples", "Bananas", "Cherries", "Dates"] plt.pie(y, labels = mylabels)
加上标签后,大家可以看到 这些标签的展示顺序就是逆时针来对应 各个块的。前面我们知道画饼图的默认方向是 X -->逆时针画
如果我们想改变第一个饼图画的起始位置呢,应该怎么办?
默认情况下我们是从 X-> 0 这个方向画饼图的,如果想从 90度这个方向画应该怎么办?
plt.pie(y, labels = mylabels, startangle = 90)
只需要修改起始位置的角度即可。默认情况下饼图是一个挨一个,紧靠中心点的
如果要像下面这样某块区域诹中心点有距离,应该怎么劝你
myexplode = [1, 0, 0, 0] plt.pie(y, labels = mylabels, startangle = 90, explode = myexplode)
最后是完整的程序
""" Created on 2023年1月14日 @author: admin """ import matplotlib.pyplot as plt import numpy as np from pandas._libs.reshape import explode y = np.array([35, 25, 25, 15]) import matplotlib.pyplot as plt import numpy as np mylabels = ["Apples", "Bananas", "Cherries", "Dates"] myexplode = [1, 0, 0, 0] plt.pie(y, labels = mylabels, startangle = 90, explode = myexplode) plt.show()