2013-10-12 49 views
2

我需要繪製如下圖所示的橢圓。代碼來自一個教程。但我需要在範圍X中繪製橢圓:[ - 10,-10]和Y:[-2,-2]。我應該如何修改我的代碼?在給定範圍內的matplotlib輪廓圖

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() 

enter image description here

回答

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() 

enter image description here


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

在用於與中心橢圓方程(A,B)。 玩弄常數(例如1和3),看看它如何在X和Y方向上拉伸橢圓。

+0

但是然後情節是不可見的。我應該如何修改該功能以使其可見? – Bob