fig = pyplot.figure()
ax = fig.add_subplot(1, 1, 1, projection='3d')
U = numpy.abs(U)
verts = []
for i in range(T.shape[0]):
    verts.append(zip(T[(i), :], U[(i), :]))
poly = PolyCollection(verts, facecolors=(1, 1, 1, 1), edgecolors=(0, 0, 1, 1))
ax.add_collection3d(poly, zs=z[:, (0)], zdir='y')
ax.set_xlim3d(numpy.min(T), numpy.max(T))
ax.set_ylim3d(numpy.min(z), numpy.max(z))
ax.set_zlim3d(numpy.min(U), numpy.max(U))
drawPropagation(1.0, 1.0, numpy.linspace(-2, 2, 10))
pyplot.show()
Matplotlib строит распространение импульса в 3d