我想在python中生成3D正弦曲线。 lumpy是否支持它?或者我可以使用其他库吗?
生成2D曲线很简单-
x = numpy.linspace(0, 20, 0.1)
y = numpy.sin(x)
现在我可以将x和y保存到磁盘了。
现在,我想做类似的事情,但要在x,y和z轴上使用3D正弦曲线。我希望有人以前能做得到并帮助我。
编辑:我已经意识到,对于我的用例,我想要3D空间中的2D曲线。因此,其他轴可以是恒定的。因此,我只是生成2D曲线并添加恒定的第三参数值以获得x,y,z值。
答案 0 :(得分:1)
您可以尝试以下操作:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
x = np.arange(0, 20, 0.1)
y = np.sin(x)
z = y*np.sin(x)
fig = plt.figure()
ax = plt.axes(projection='3d')
c = x + y
ax.scatter(x, y, z, c=c)
或者您可能想要z = x*np.sin(x)
甚至是z = np.sin(y)
编辑:也许这是here的最佳解决方案z = np.sin(np.sqrt(x**2+y**2))
试一下,找到想要的东西。很时髦的东西,并且取决于您要寻找的输出。