Notiz
Klicken Sie hier , um den vollständigen Beispielcode herunterzuladen
Kontur-Demo #
Veranschaulichen Sie einfache Konturplots, Konturen auf einem Bild mit einem Farbbalken für die Konturen und beschriftete Konturen.
Siehe auch das Konturbildbeispiel .
Erstellen Sie ein einfaches Konturdiagramm mit Beschriftungen unter Verwendung von Standardfarben. Das Inline-Argument von clabel steuert, ob die Beschriftungen über die Liniensegmente der Kontur gezeichnet werden, wodurch die Linien unter der Beschriftung entfernt werden.
fig, ax = plt.subplots()
CS = ax.contour(X, Y, Z)
ax.clabel(CS, inline=True, fontsize=10)
ax.set_title('Simplest default with labels')
Text(0.5, 1.0, 'Simplest default with labels')
Konturetiketten können manuell platziert werden, indem eine Liste von Positionen (in Datenkoordinaten) bereitgestellt wird. Siehe Interaktive Funktionen für interaktive Platzierung.
fig, ax = plt.subplots()
CS = ax.contour(X, Y, Z)
manual_locations = [
(-1, -1.4), (-0.62, -0.7), (-2, 0.5), (1.7, 1.2), (2.0, 1.4), (2.4, 1.7)]
ax.clabel(CS, inline=True, fontsize=10, manual=manual_locations)
ax.set_title('labels at selected locations')
Text(0.5, 1.0, 'labels at selected locations')
Sie können erzwingen, dass alle Konturen dieselbe Farbe haben.
fig, ax = plt.subplots()
CS = ax.contour(X, Y, Z, 6, colors='k') # Negative contours default to dashed.
ax.clabel(CS, fontsize=9, inline=True)
ax.set_title('Single color - negative contours dashed')
Text(0.5, 1.0, 'Single color - negative contours dashed')
Sie können negative Konturen so einstellen, dass sie durchgezogen statt gestrichelt sind:
plt.rcParams['contour.negative_linestyle'] = 'solid'
fig, ax = plt.subplots()
CS = ax.contour(X, Y, Z, 6, colors='k') # Negative contours default to dashed.
ax.clabel(CS, fontsize=9, inline=True)
ax.set_title('Single color - negative contours solid')
Text(0.5, 1.0, 'Single color - negative contours solid')
Und Sie können die Farben der Kontur manuell festlegen
fig, ax = plt.subplots()
CS = ax.contour(X, Y, Z, 6,
linewidths=np.arange(.5, 4, .5),
colors=('r', 'green', 'blue', (1, 1, 0), '#afeeee', '0.5'),
)
ax.clabel(CS, fontsize=9, inline=True)
ax.set_title('Crazy lines')
Text(0.5, 1.0, 'Crazy lines')
Oder Sie können eine Farbkarte verwenden, um die Farben anzugeben; Für die Konturlinien wird die Standardfarbkarte verwendet
fig, ax = plt.subplots()
im = ax.imshow(Z, interpolation='bilinear', origin='lower',
cmap=cm.gray, extent=(-3, 3, -2, 2))
levels = np.arange(-1.2, 1.6, 0.2)
CS = ax.contour(Z, levels, origin='lower', cmap='flag', extend='both',
linewidths=2, extent=(-3, 3, -2, 2))
# Thicken the zero contour.
CS.collections[6].set_linewidth(4)
ax.clabel(CS, levels[1::2], # label every second level
inline=True, fmt='%1.1f', fontsize=14)
# make a colorbar for the contour lines
CB = fig.colorbar(CS, shrink=0.8)
ax.set_title('Lines with colorbar')
# We can still add a colorbar for the image, too.
CBI = fig.colorbar(im, orientation='horizontal', shrink=0.8)
# This makes the original colorbar look a bit out of place,
# so let's improve its position.
l, b, w, h = ax.get_position().bounds
ll, bb, ww, hh = CB.ax.get_position().bounds
CB.ax.set_position([ll, b + 0.1*h, ww, h*0.8])
plt.show()
Verweise
In diesem Beispiel wird die Verwendung der folgenden Funktionen, Methoden, Klassen und Module gezeigt:
Gesamtlaufzeit des Skripts: ( 0 Minuten 2.685 Sekunden)