2017-06-21 90 views
1

如果我想繪製類似y=x^2那麼我可以這樣做繪製曲線方程而不解決matplotlib中的因變量?

x = np.linspace(-10, 10, 1000) 
plt.plot(x, x**2) 

但是我怎麼去這個如果那麼方程是一樣的東西x + y + sin(x) + sin(y) = 0?我寧願不用手工解決y。是否有一些功能可以處理這個問題?

回答

0

這將做的工作:

import matplotlib.pyplot 
import numpy as np 
X, Y = np.meshgrid(np.arange(-10, 10, 0.05),np.arange(-10, 10, 0.05)) 
matplotlib.pyplot.contour(X, Y, X + Y + np.sin(X) + np.sin(Y), [0]) 
matplotlib.pyplot.show() 
0

您可以嘗試等高線圖:

from matplotlib.pyplot import * 

def your_function(x, y): 
    return 5 * np.sin(x) - 2 * np.cos(y) 

x = np.linspace(-10, 10, 1000) 
X, Y = np.meshgrid(x, x) 
Z = your_function(X, Y) 

CP = contour(X, Y, Z, [0]) 
grid() 
show()