如何将 Python 图像绘制中的 x 轴刻度设置为日期格式?

如何将 python 图像绘制中的 x 轴刻度设置为日期格式?

python图像绘制中 x 轴的自定义设定

在图像绘制中,x 轴的刻度通常表示时间或日期等连续值。为了在图表中清晰地展示这些刻度,可以对其进行自定义设定。

问题描述

给定一个包含日期和数值数据的 csv 文件,需要生成一个图表,其中 x 轴表示日期。但是,默认的 x 轴刻度为连续编号,无法直接显示具体的日期。

立即学习Python免费学习笔记(深入)”;

解决方案

要将 x 轴刻度更改为日期,需要使用以下步骤:

  1. 将日期列设置为主键:使用 set_index() 方法将 date 列设置为 dataframe 的主键。
  2. 使用 matplotlib.dates 模块:导入 matplotlib.dates 模块,并使用 dateformatter 类将 x 轴刻度格式化为日期格式。

修改后的代码如下:

import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import datetime

fileName = 'test_01.csv'
df = pd.read_csv(fileName)

# 设置日期列为主键
df.set_index(df['date'], inplace=True)

# 使用 DateFormatter 格式化 x 轴刻度
ax = df[['A','B','C']].plot.area()
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y/%m/%d'))
ax.xaxis.set_major_locator(mdates.DayLocator(interval=1))
plt.legend(loc='upper left', bbox_to_anchor=(1, 1))  
plt.savefig(fileName.replace('.csv','.png'), bbox_inches='tight')

效果

修改后,图表中 x 轴的刻度将显示为具体日期,例如 "2020/4/1",更便于理解图像中的数据。

以上就是如何将 Python 图像绘制中的 x 轴刻度设置为日期格式?的详细内容,更多请关注其它相关文章!