使用python生成3D正弦曲线

时间:2019-04-11 04:58:30

标签: python numpy

我想在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值。

1 个答案:

答案 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))

试一下,找到想要的东西。很时髦的东西,并且取决于您要寻找的输出。