欢迎访问宙启技术站
智能推送

使用matplotlib.dates库绘制WE时间序列图表的实际案例

发布时间:2023-12-23 09:20:53

matplotlib.dates库是一个用于绘制时间序列图表的Python库。它提供了一系列的日期和时间相关的对象和函数,使得在图表上展示时间序列数据变得非常简单。

下面以绘制某公司每周末的销售额时间序列图表为例,来说明如何使用matplotlib.dates库进行绘制。

首先,我们需要导入相关的库以及载入数据。

import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import datetime

# 载入数据
weekends = ['2021-01-02', '2021-01-09', '2021-01-16', '2021-01-23', '2021-01-30']
sales = [20000, 22000, 18000, 21000, 19000]

# 将日期字符串转换为日期类型
weekends = [datetime.datetime.strptime(date, "%Y-%m-%d").date() for date in weekends]

接下来,我们创建一个图表,并设置x轴和y轴的标签。

fig, ax = plt.subplots()
ax.set_xlabel('Weekends')
ax.set_ylabel('Sales')

然后,我们使用mdates库中的date2num函数将日期转换为数值,以便于在图表上进行展示。

# 将日期转换为数值
weekends_num = mdates.date2num(weekends)

接下来,我们使用plot函数绘制时间序列图表。

# 绘制时间序列图表
ax.plot(weekends_num, sales, marker='o', linestyle='-', label='Sales')

在图表上绘制了销售额的时间序列数据后,我们可以对横轴上的日期进行格式化,使其以日期的形式显示。

# 格式化x轴上的日期
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d'))

最后,我们可以添加图例,并显示图表。

# 添加图例
ax.legend()

# 显示图表
plt.show()

以上就是使用matplotlib.dates库绘制时间序列图表的实际案例。通过将日期转换为数值,并在图表上以日期的形式显示,我们可以清晰地展示时间序列数据的变化情况。