上一节我们介绍了一些常见的图形绘制,接下来我们将继续绘制更多的图形,并让图形更加美观可用
文章主要针对初学者,只介绍了一些常用的参数
一、堆积面积图
堆积面积图和折线图一样,都是通过连接不同的点组成的
因此,同样只需要X,Y即可绘制图形
它的函数名为 stackplot
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [1, 2, 3, 4, 5]
y2 = [1, 2, 4, 6, 8]
y3 = [1, 3, 6, 10, 15]
plt.stackplot(x, y1, y2, y3)
plt.show()
这里我们同时将三组Y值同时输入到了一个函数中。
和其他图形一样,同样可以使用 color 来设置颜色
二、饼图和环状图
刚才只是开胃菜,饼图和环状图所需要的参数就更多了。
1.饼图
观察饼图,我们需要以下参数:数值、标签、色彩、突起版块
import matplotlib.pyplot as plt
#设置数值
sizes = [15, 30, 45, 10]
#设置标签
labels = ['Frogs', 'Hogs', 'Dogs', 'Logs']
#设置突起
explode = (0, 0.1, 0, 0)
plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%')
plt.show()
其中 explode 表示的是突起的程度,我们将第二个数的突起值设为0.1,可以在图中看到第二个Hogs在板块中突起
由于饼图用于百分比显示,而不是数值显示
因此我们需要添加 autopct 参数来将数值转化为百分比
其中 autopct=‘%1.1f%%’ 中第二个1表示保留几位小数,此时我们设置的是保留一位小数
如果要保留两位小数就是
autopct=‘%1.2f%%’
2.环状图
环状图是一种特殊的饼图
绘制方法和饼图一样,只需要额外添加一个参数
import matplotlib.pyplot as plt
sizes = [151, 310, 415, 110]
labels = ['Frogs', 'Hogs', 'Dogs', 'Logs']
plt.pie(sizes, labels=labels, autopct='%1.2f%%',wedgeprops={
'width':0.5})
plt.show()
在这里有一个新的参数
wedgeprops={‘width’:0.5}
只需要添加这个参数,就可以设置环状的大小,当数值越小,环状图的宽度就越小
三、雷达图
在介绍选手参数的时候,往往会采用雷达图来展示选手在各种参数上的水平。
例如在 英雄联盟 游戏中,雷达图是评估一个选手实力的体现
绘制雷达图会稍微有点难度,使用的函数为 plt.polar
import matplotlib.pyplot as plt
import numpy as np
#标签的设置
labels=np.array(['Economy', 'Health', 'Family', 'Freedom', 'Trust', 'Generosity'])
labels=np.concatenate((labels,[labels[0]]))
#数据的设置
data1 = np.random.rand(6)
data2 = np.random.rand(6)
data1 =np.concatenate((data1,[data1[0]]))
data2 =np.concatenate(