You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中正确索引数据并按日期绘制双曲线图

数据集节选

实现步骤与代码示例

依赖安装(未安装对应库先执行)

pip install pandas matplotlib

完整可运行代码

import pandas as pd
import matplotlib.pyplot as plt

# 1. 加载并预处理数据
# 表格数据用这个逻辑,Excel文件替换为pd.read_excel即可
df = pd.read_csv("你的数据文件路径.csv")
# 替换为你数据里的日期列名,转换为时间格式方便索引匹配
df["date"] = pd.to_datetime(df["date"])
# 拿到所有去重的待绘图日期列表
date_list = df["date"].unique()

# 2. 按日期循环绘图
for cur_date in date_list:
    # 按日期索引筛选单日数据,默认会匹配到该日期对应的4条记录
    day_df = df[df["date"] == cur_date]
    
    # 替换为你实际的x轴列、两条曲线对应的数值列名
    x = day_df["x轴取值列"]
    y_line1 = day_df["第一条曲线数值列"]
    y_line2 = day_df["第二条曲线数值列"]

    # 绘图逻辑
    plt.figure(figsize=(7, 4))
    plt.plot(x, y_line1, label="曲线1名称", marker="o")
    plt.plot(x, y_line2, label="曲线2名称", marker="s")
    plt.title(f"日期:{cur_date.strftime('%Y-%m-%d')}")
    plt.xlabel("x轴标签")
    plt.ylabel("数值标签")
    plt.legend()
    # 可选:自动按日期命名保存图片到当前文件夹
    plt.savefig(f"{cur_date.strftime('%Y%m%d')}_曲线图.png", dpi=100, bbox_inches="tight")
    plt.show()

异常排查点

  • 如果索引筛选出来的单日数据不是4条,先检查日期列的格式是否统一,有没有多余空格、中英文符号混用的问题
  • 如果是纯列表格式的数据源(未存为表格),直接按索引位置对应即可:假设date_list[i]对应的数据是data[i],其中data[i]包含4个x值和2组y值,循环按i取数绘图即可

内容的提问来源于stack exchange,提问作者user17050749

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 18:54:02