2017-03-25 1 views
0

my 함수 f는 (1, x, y) 형식의 벡터를 취하고 출력은 실수입니다.어떻게 암묵적으로 정의 된 함수의 그래프를 파이썬으로 그릴 수 있습니까?

저는 x-y 평면에서 f (1, x, y) == 0과 같은 선을 그립니다.

내 시도 :

는 = Y1 (...) F 여기
delta = 0.025 
xrange = arange(0, 12, delta) 
yrange = arange(0, 12, delta) 
p, q = meshgrid(xrange, yrange) 

mesh_point = [] 
for i in range(len(p[0])): 
    for j in range (len(q[0])): 
     mesh_point.append([p[0][i], q[0][j]]) 

for i in range (0, len(p[0])): 
plt.contour(p, q, (y1([1, p[0][i], q[0][i]])-y2([1, p[0][i], q[0][i]])) , [0]) 
plt.show() 

- Y2 (...)

누군가를 도울 수 있는가?

답변

0

왼쪽에 contour을 입력하고 단일 레벨 (0)을 선택하여 등고선을 f(1,x,y) = 0에 그릴 수 있습니다.

import matplotlib.pyplot as plt 
import numpy as np 

delta = 0.025 
x = np.arange(0, 12, delta) 
y = np.arange(0, 12, delta) 
p, q = np.meshgrid(x, y) 
# define some function f(n,x,y) 
f = lambda n, x, y: np.sin(np.sqrt(np.abs(x-3-0.5*y)**1.5))+np.exp(-(y-6)**2)-1 
z=f(1, p,q) 

# plot contour line of f(1,x,y)==0 
plt.contour(p, q, z , [0], colors=["k"]) 

#make legend 
proxy, = plt.plot([], color="k") 
plt.legend(handles=[proxy], labels=["f(1,x,y) = 0"]) 
plt.show() 

enter image description here

관련 문제