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

Python Pandas新手求助:如何基于日期价格数据创建图表?

基于日期-价格数据创建图表的解决方案

1. 调整DataFrame结构

你当前的DataFrame把日期作为列名、价格作为单行数据,这种结构不适合直接绘图。首先需要转置数据,让日期和价格成为独立的列:

import pandas as pd

# 转置DataFrame并重置索引,重命名列
data_transposed = data.T.reset_index()
data_transposed.columns = ['日期', '价格']

2. 转换日期格式

将字符串类型的日期转换为datetime类型,确保图表的x轴按时间顺序排列:

data_transposed['日期'] = pd.to_datetime(data_transposed['日期'])

3. 绘制折线图(推荐用于时间序列)

使用matplotlib绘制价格走势折线图,这是展示日期-价格数据最直观的方式:

import matplotlib.pyplot as plt

# 设置图表大小
plt.figure(figsize=(10, 6))
# 绘制折线,添加标记点
plt.plot(data_transposed['日期'], data_transposed['价格'], marker='o', linestyle='-', color='#1f77b4')
# 设置图表标题和坐标轴标签
plt.title('每日价格走势')
plt.xlabel('日期')
plt.ylabel('价格')
# 旋转x轴日期标签,避免重叠
plt.xticks(rotation=45)
# 自动调整布局,防止标签被截断
plt.tight_layout()
# 显示图表
plt.show()

简化版:用Pandas直接绘图

如果想更简洁,也可以利用Pandas内置的绘图功能,省略手动转置后的部分步骤:

# 转置数据并重命名列,直接调用plot方法
data.T.rename(columns={0: '价格'}).plot(figsize=(10, 6), marker='o', title='每日价格走势')
plt.xlabel('日期')
plt.ylabel('价格')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 06:35:25