>>> """
=====================
3D surface (colormap)
=====================
Demonstrates plotting a 3D surface colored with the coolwarm colormap.
The surface is made opaque by using antialiased=False.
Also demonstrates using the LinearLocator and custom formatting for the
z axis tick labels.
"""
...
... import matplotlib.pyplot as plt
... from matplotlib import cm
... from matplotlib.ticker import LinearLocator
... import numpy as np
...
... fig, ax = plt.subplots(subplot_kw={"projection": "3d"})
...
... # Make data.
... X = np.arange(-5, 5, 0.25)
... Y = np.arange(-5, 5, 0.25)
... X, Y = np.meshgrid(X, Y)
... R = np.sqrt(X**2 + Y**2)
... Z = np.sin(R)
...
... # Plot the surface.
... surf = ax.plot_surface(X, Y, Z, cmap=cm.coolwarm,
... linewidth=0, antialiased=False)
...
... # Customize the z axis.
... ax.set_zlim(-1.01, 1.01)
... ax.zaxis.set_major_locator(LinearLocator(10))
... # A StrMethodFormatter is used automatically
... ax.zaxis.set_major_formatter('{x:.02f}')
...
... # Add a color bar which maps values to colors.
... fig.colorbar(surf, shrink=0.5, aspect=5)
...
... plt.show()
...
...
... #############################################################################
... #
... # .. admonition:: References
... #
... # The use of the following functions, methods, classes and modules is shown
... # in this example:
... #
... # - `matplotlib.pyplot.subplots`
... # - `matplotlib.axis.Axis.set_major_formatter`
... # - `matplotlib.axis.Axis.set_major_locator`
... # - `matplotlib.ticker.LinearLocator`
... # - `matplotlib.ticker.StrMethodFormatter`
...