Nota
Haga clic aquí para descargar el código de ejemplo completo
Contorno Manual #
Ejemplo de visualización de sus propias curvas de nivel y polígonos utilizando ContourSet.
import matplotlib.pyplot as plt
from matplotlib.contour import ContourSet
import matplotlib.cm as cm
Las curvas de nivel de cada nivel son una lista/tupla de polígonos.
Los contornos rellenos entre dos niveles también son una lista/tupla de polígonos. Los puntos se pueden pedir en sentido horario o antihorario.
fig, ax = plt.subplots()
# Filled contours using filled=True.
cs = ContourSet(ax, [0, 1, 2], [filled01, filled12], filled=True, cmap=cm.bone)
cbar = fig.colorbar(cs)
# Contour lines (non-filled).
lines = ContourSet(
ax, [0, 1, 2], [lines0, lines1, lines2], cmap=cm.cool, linewidths=3)
cbar.add_lines(lines)
ax.set(xlim=(-0.5, 3.5), ylim=(-0.5, 4.5),
title='User-specified contours')
[(-0.5, 3.5), (-0.5, 4.5), Text(0.5, 1.0, 'User-specified contours')]
Se pueden especificar varias líneas de contorno rellenas en una sola lista de vértices de polígonos junto con una lista de tipos de vértices (tipos de código) como se describe en la clase Ruta. Esto es particularmente útil para polígonos con agujeros. Aquí, un tipo de código de 1 es MOVETO y 2 es LINETO.
fig, ax = plt.subplots()
filled01 = [[[0, 0], [3, 0], [3, 3], [0, 3], [1, 1], [1, 2], [2, 2], [2, 1]]]
kinds01 = [[1, 2, 2, 2, 1, 2, 2, 2]]
cs = ContourSet(ax, [0, 1], [filled01], [kinds01], filled=True)
cbar = fig.colorbar(cs)
ax.set(xlim=(-0.5, 3.5), ylim=(-0.5, 3.5),
title='User specified filled contours with holes')
plt.show()