如何在Python上用它的方程绘制椭圆?

时间:2015-04-11 19:29:11

标签: python math matplotlib plot

所以我有这个等式:

x^2 + 4*(z+10)^2 = e^(-0.05*z)

如何使用Matplotlib.pyplot和Numpy包来绘制它?

2 个答案:

答案 0 :(得分:7)

我的解决方案是:计算给定x和z网格的方程的每一边。然后我轮廓满足等式的点。一边减去其他边等于零。

import numpy as np
import matplotlib.pyplot as plt

z = -np.linspace(9,15,100)
x = np.linspace(-26,26,1000)

x,z = np.meshgrid(x,z)

Z = -np.exp(-0.05*z) +4*(z+10)**2 
X = x**2


plt.contour(x,z,(X+Z),[0])
plt.xlim([-1.5,1.5])
plt.ylim([-11.5,-8.5])

Out

答案 1 :(得分:1)

使用sympy http://docs.sympy.org/latest/modules/plotting.html的plot_implicit函数或使用Sage http://www.sagemath.org/