Aun cuando matplotlib fue diseñado en un principio como software para la generación de gráficos bidimensionales, con el tiempo se le han ido añadiendo herramientas que, si bien limitadas, permiten la generación de gráficos en 3D.
Para habilitar la creación de este tipo de gráficos basta importar el objeto Axes3D de la sublibrería mpl_toolkits.mplot3d, y generar un conjunto de ejes con el método gca asociado a la figura indicando que la proyección es de tipo "3d":
A partir de aquí, basta con utilizar las funciones de matplotlib que generan los gráficos en 3D: plot_surface, plot3D, scatter3D, contour3D, contourf3D, etc.