首页 > 编程笔记 > Python笔记

Python stackplot()函数:绘制面积图

面积图强调数量随时间的变化而变化的程度,也可用于引起人们对总值趋势的注意。

Python 中,可以通过 matplotlib.pyplot 模块中的 stackplot() 函数绘制面积图,其语法格式如下:
stackplot(x,y,labels,colors,alpha)

示例代码如下:
import matplotlib.pyplot as plt
# 显示中文
plt.rcParams['font.sans-serif'] = 'SimHei'
# 显示负号
plt.rcParams['axes.unicode_minus'] = False
# x轴的刻度线向内显示
plt.rcParams['xtick.direction'] = 'in'
# y轴的刻度线向外显示
plt.rcParams['ytick.direction'] = 'out'
# 创建画布
plt.figure(figsize=(10, 8))
# 面积图标题
plt.title('C语言教程各平台销售量分析表')
# 数据
X = [0, 1, 2, 3, 4, 5, 6, 7]
y = {
    'A': [1234, 4255, 3454, 6522, 2566, 4175, 5125, 6674],
    'B': [785, 3584, 3254, 2351, 3522, 2541, 1255, 5254],
    'C': [2155, 3587, 4233, 3451, 6258, 5444, 6331, 6123],
    'D': [1200, 4344, 2236, 2666, 2588, 1186, 2631, 4122],
    'E': [2508, 2123, 3211, 2167, 3255, 5123, 4611, 5621]
}
# 绘制面积图
plt.stackplot(X, y.values())
# 设置x轴标题
plt.xlabel('年份')
# 设置y轴标题
plt.ylabel('销售量/本')
# 设置x轴刻度
plt.xticks(range(0, 8, 1), ['2015', '2016', '2017', '2018', '2019', '2020', '2021', '2022'])
# 设置图例
plt.legend(labels=['A', 'B', 'C', 'D', 'E'], loc=2)
# 显示图表
plt.show()
上面代码的运行结果为:

相关文章