Notiz
Klicken Sie hier , um den vollständigen Beispielcode herunterzuladen
Manuelle Kontur #
Beispiel für die Anzeige eigener Konturlinien und Polygone mit ContourSet.
import matplotlib.pyplot as plt
from matplotlib.contour import ContourSet
import matplotlib.cm as cm
Konturlinien für jede Ebene sind eine Liste/ein Tupel von Polygonen.
Gefüllte Konturen zwischen zwei Ebenen sind ebenfalls eine Liste/ein Tupel von Polygonen. Punkte können im Uhrzeigersinn oder gegen den Uhrzeigersinn bestellt werden.
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')]
Mehrere gefüllte Konturlinien können in einer einzelnen Liste von Polygonscheitelpunkten zusammen mit einer Liste von Scheitelpunktarten (Codetypen) angegeben werden, wie in der Pfadklasse beschrieben. Dies ist besonders nützlich für Polygone mit Löchern. Hier ist ein Codetyp von 1 ein MOVETO und 2 ein 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()