5
我想绘制脉冲传播的方式在每一步,它绘制脉冲形状。换句话说,我想要一系列x-z图,对于y的每个值。像这样的东西(没有颜色): Matplotlib在3d脉冲传播
我该如何使用matplotlib(或Mayavi)来做到这一点?下面是我做的,到目前为止:
def drawPropagation(beta2, C, z):
""" beta2 in ps/km
C is chirp
z is an array of z positions """
T = numpy.linspace(-10, 10, 100)
sx = T.size
sy = z.size
T = numpy.tile(T, (sy, 1))
z = numpy.tile(z, (sx, 1)).T
U = 1/numpy.sqrt(1 - 1j*beta2*z * (1 + 1j * C)) * numpy.exp(- 0.5 * (1 + 1j * C) * T * T/(1 - 1j*beta2*z*(1 + 1j*C)))
fig = pyplot.figure()
ax = fig.add_subplot(1,1,1, projection='3d')
surf = ax.plot_wireframe(T, z, abs(U))
下面是从文档的例子:http://matplotlib.org/examples/mplot3d/bars3d_demo.html –