python绘图 | 横坐标是日期,纵坐标是数值

需求

profit_value = [0.084, 0.225, 0.234, 0.264, 0.328]
time_stamp = [20221111, 20230511, 20230704, 20231212, 20240315]
横坐标是日期,纵坐标是数值,我想绘图的时候,横坐标是按日期格式来

代码

from matplotlib import pyplot as plt
from matplotlib import rcParams
import numpy as np
from datetime import datetime

config = {
    "font.family": 'serif', # 衬线字体
    "font.size": 15, # 相当于小四大小
    "font.serif": ['SimHei'], # 宋体
    "mathtext.fontset": 'stix', # matplotlib渲染数学字体时使用的字体,和Times New Roman差别不大
    'axes.unicode_minus': False # 处理负号,即-号
}
rcParams.update(config)

# 你的原始数据
profit_value = [0.084, 0.225, 0.234, 0.264, 0.328]
time_stamp = [20221111, 20230511, 20230704, 20231212, 20240315]

# 将时间戳转换为datetime对象
dates = [datetime.strptime(str(ts), '%Y%m%d').date() for ts in time_stamp]

# 绘制图表
plt.figure(figsize=(10, 5))  # 可以调整图表大小
plt.plot(dates, profit_value, marker='o')  # 使用圆点标记每个数据点

# 设置图表标题和坐标轴标签
plt.title('利润率随日期变化趋势', fontsize=16)
plt.xlabel('日期')
plt.ylabel('利润率')
plt.xticks(fontname='Times New Roman', fontsize=14)
plt.yticks(fontname='Times New Roman', fontsize=14)

# 格式化x轴日期显示
plt.gcf().autofmt_xdate()  # 自动旋转日期标记,使其垂直显示

# 显示网格
plt.grid(True)

# 显示图表
plt.show()

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

故障诊断与python学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值