Наложение кривых на поверхность Matplotlib - PullRequest
0 голосов
/ 12 января 2020

Я заинтересован в построении кривых на поверхностях вращения и сделал это, но поверхность наложена поверх кривой, кто-нибудь знает, как сделать обратное?

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D


def surface_of_rev(u,v):
    f = v
    x = f*np.cos(u)
    y = f*np.sin(u)
    z = np.exp(-v**2) 
    return x,y,z

U = np.linspace(0,2*pi,n)
V = np.linspace(0.,3,n)
U,V = np.meshgrid(U,V)
x,y,z = surface_of_rev(U,V)


# curve
a = 3
b = 1
T = np.linspace(0,3,100)
xx,yy,zz = surface_of_rev(a*T+b,2*T)

# plot
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
curve = ax.plot(xx, yy, zz, 'o-', lw=2)
surface = ax.plot_surface(x, y, z,color= 'g')
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
ax.view_init(50, 10)
plt.show()

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...