G = (Gx ** 2 + Gy ** 2) ** 0.5
N = G / G.max()
surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, facecolors=cm.jet(N),
    linewidth=0, antialiased=False, shade=False)
plt.show()
Цветная команда matplotlib plot_surface с градиентом поверхности