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

如何在Matplotlib绘制的向量场图中添加y=x²曲线?

在向量场中添加曲线$y=x^2$的正确方法

问题出在你用来生成曲线的x是meshgrid生成的二维网格数组,直接用它调用plt.plot会绘制大量冗余线条,导致显示异常。你需要单独创建一组一维的x数据来生成曲线的y值。

修改后的完整代码如下:

import matplotlib.pyplot as plt
import numpy as np

# 生成向量场的网格数据
x_grid, y_grid = np.meshgrid(np.arange(-3, 3, .35), np.arange(-3, 3, .35))
u = x_grid
v = y_grid

# 绘制向量场
plt.quiver(x_grid, y_grid, u, v, color='black')

# 生成曲线y=x²的一维数据
x_curve = np.linspace(-3, 3, 100)  # 生成足够多的点保证曲线平滑
y_curve = x_curve ** 2

# 绘制曲线
plt.plot(x_curve, y_curve, color='red', linewidth=2)

plt.show()

关键说明:

  • 将原网格变量重命名为x_grid、y_grid,避免和曲线的一维数据变量混淆
  • 用np.linspace生成一维x数组,足够多的采样点能让曲线更平滑
  • 单独计算曲线对应的y值,再调用plt.plot即可正常显示曲线

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 20:45:31