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

使用Matplotlib绘图无显示却打印数据并输出‘not found’求助

2024-12-30,120,170,225
2024-12-31,122,172,228
not found

---

# 问题分析与解决方案

咱们拆解一下你的问题:核心是**绘图窗口不显示**和**意外打印数据+出现"not found"提示**,逐个解决就好:

## 1. 绘图未显示的核心原因
Matplotlib不会自动弹出绘图窗口,必须手动调用`plt.show()`来触发显示。你的代码里刚好漏掉了这关键一行,导致图形绘制完成后没有被渲染出来。

修改方案:在绘图代码的最后加上这行:
```python
plt.show()

2. 意外打印数据+输出"not found"的排查

  • 持续打印数据:先检查代码里是不是不小心写了print(df)这类语句——这会直接输出整个DataFrame的所有行。如果有,删掉或者注释掉就行,实在要验证数据,用print(df.head())只打印前5行就够了。
  • 末尾的"not found":大概率是CSV文件路径不对:
    • 先确认文件名有没有拼写错误(比如是不是把prices_data.csv写成了price_data.csv?)
    • 如果CSV不在当前脚本的运行目录,要写完整路径,比如:
      df = pd.read_csv("/Users/yourname/Documents/prices_data.csv")
      
    • 不确定当前目录的话,可以先打印出来确认:
      import os
      print("当前运行目录:", os.getcwd())
      

完整修正后的代码示例

import pandas as pd
import matplotlib.pyplot as plt
import os

# 可选:确认当前工作目录,方便排查文件路径问题
print("当前运行目录:", os.getcwd())

# 读取CSV(确保路径/文件名正确)
df = pd.read_csv("prices_data.csv")

# 转换日期列
df['date'] = pd.to_datetime(df['date'])

# 优化绘图:设置图大小,添加标记让曲线更清晰
plt.figure(figsize=(10, 6))
plt.plot(df['date'], df['price1'], label='Price 1', marker='o')
plt.plot(df['date'], df['price2'], label='Price 2', marker='s')
plt.plot(df['date'], df['price3'], label='Price 3', marker='^')

plt.xlabel('Date')
plt.ylabel('Price')
plt.title('Price Trends Over Time')
plt.legend()
plt.xticks(rotation=45)  # 旋转日期标签,避免重叠
plt.tight_layout()  # 自动调整布局,防止标签被截断

# 关键:显示绘图窗口
plt.show()

额外小提示

如果是在Jupyter Notebook里运行,不用写plt.show(),但要先加一行魔法命令%matplotlib inline,这样图形会直接嵌入到单元格里显示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 07:17:57