だから私はpythonを学んでいて、現在、物事の3Dプロットを作成しています。物事を面白く保つために、クラインボトルのプロットを作成したいのですが、どういうわけかまったく機能していません. そして、サーフェスの 2 つのパラメーター化を試みました (1 つはWolframで、もう 1 つはランダムな Web サイトで) 両方とも、トーラスのような図が得られました。
だから、私のコードが間違っているのではないかと思っていました。誰か見て、私がそれを正しく行っているかどうか教えてもらえますか (もしあなたがたまたまクラインの瓶のパラメータ化を知っているなら、それも大歓迎です :P)
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
import numpy as np
def surf(u, v):
X = (3+(1+np.sin(v)) + 2*(1 - np.cos(v)/2)*np.cos(u))*np.cos(v)
Y = (4+2*(1 - np.cos(v)/2) * np.cos(u))*np.sin(v)
Z = -2*(1-np.cos(v)/2)*np.sin(u)
return X,Y,Z
ux, vx = np.meshgrid(np.linspace(0, 2*np.pi, 20),
np.linspace(0, 2*np.pi, 20))
x,y,z = surf(ux, vx)
fig = plt.figure()
ax = fig.gca(projection="3d")
plot = ax.plot_surface(x,y,z, rstride=1, cstride=1, cmap=cm.jet,
linewidth=0, antialiased=False)
plt.show()