2

我需要绘制如下图所示的椭圆。代码取自一个教程。但我需要在 X:[-10,-10] 和 Y:[-2,-2] 范围内绘制椭圆。我应该如何修改我的代码?

fig = plt.figure()
x = linspace(0, 10, 51)
y = linspace(0, 8, 41)
(X, Y) = meshgrid(x, y)
a = exp(-((X - 2.5) ** 2 + (Y - 4) ** 2) / 4)
c = plt.contour(x, y, a)
plt.show()

在此处输入图像描述

4

1 回答 1

4
plt.xlim(-10, 10)
plt.ylim(-2, 2)

会将绘图限制在该区域。


import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
x = np.linspace(-10, 10, 100)
y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(x, y)
a = np.exp(-((X - 0) ** 2 + 3*(Y - 0) ** 2) / 4)
c = plt.contour(x, y, a)
plt.xlim(-10, 10)
plt.ylim(-2, 2)
plt.show()

在此处输入图像描述


1*(X - A) ** 2 + 3*(Y - B) ** 2) == 0

是以 (A, B) 为中心的椭圆的方程。使用常量(例如 1 和 3)来查看它如何在 X 和 Y 方向上拉伸椭圆。

于 2013-10-12T14:12:18.867 回答