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

在Python中利用matplotlib.dates绘制WE日期图表的示例代码

发布时间:2023-12-23 09:18:16

在Python中使用matplotlib.dates可以绘制日期图表,并对日期进行格式化和调整。

下面是一个示例代码,演示如何使用matplotlib.dates绘制WE日期图表:

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

dates = ['2021-05-01', '2021-05-02', '2021-05-08', '2021-05-09', '2021-05-15', '2021-05-16', '2021-05-22', '2021-05-23', '2021-05-29', '2021-05-30']
values = [1, 3, 2, 4, 3, 5, 4, 6, 5, 7]

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

# 创建图表和坐标轴
fig, ax = plt.subplots()

# 绘制日期图表
ax.plot_date(dates, values, '-')

# 设置日期格式
date_format = mdates.DateFormatter('%Y-%m-%d')
ax.xaxis.set_major_formatter(date_format)
ax.xaxis.set_major_locator(mdates.WeekdayLocator(byweekday=mdates.SU))

# 设置x轴标签的旋转角度
plt.xticks(rotation=45)

# 设置图表标题和标签
plt.title('WE日期图表')
plt.xlabel('日期')
plt.ylabel('数值')

# 显示图表
plt.show()

使用上述代码,可以绘制出一个WE日期图表,其中x轴表示日期,y轴表示数值。

接下来是一个使用例子,假设我们有一些每周末的数值数据,我们想要绘制一个WE日期图表以展示这些数据的趋势:

dates = ['2021-05-01', '2021-05-02', '2021-05-08', '2021-05-09', '2021-05-15', '2021-05-16', '2021-05-22', '2021-05-23', '2021-05-29', '2021-05-30']
values = [1, 3, 2, 4, 3, 5, 4, 6, 5, 7]

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

# 创建图表和坐标轴
fig, ax = plt.subplots()

# 绘制日期图表
ax.plot_date(dates, values, '-')

# 设置日期格式
date_format = mdates.DateFormatter('%Y-%m-%d')
ax.xaxis.set_major_formatter(date_format)
ax.xaxis.set_major_locator(mdates.WeekdayLocator(byweekday=mdates.SU))

# 设置x轴标签的旋转角度
plt.xticks(rotation=45)

# 设置图表标题和标签
plt.title('WE日期图表')
plt.xlabel('日期')
plt.ylabel('数值')

# 显示图表
plt.show()

上述代码将根据给定的日期和数值数据绘制出WE日期图表,并对日期进行格式化和调整,使其在图表中以易读的方式显示。图表将显示每个周末的数值数据,并用线连接起来展示趋势。