matplotlib.colorbar#
Farbseparationen (Colorbars) sind eine Visualisierung der Abbildung von Skalarwerten auf Farben. In Matplotlib werden sie in einem dedizierten Axes gezeichnet.
Hinweis
Farbseparationen werden typischerweise über Figure.colorbar oder dessen Pyplot-Wrapper pyplot.colorbar erstellt, die intern Colorbar zusammen mit make_axes_gridspec (für GridSpec-positionierte Achsen) oder make_axes (für nicht-GridSpec-positionierte Achsen) verwenden.
Endanwender werden die API dieses Moduls höchstwahrscheinlich nicht direkt verwenden müssen.
- class matplotlib.colorbar.Colorbar(ax, mappable=None, *, alpha=None, location=None, extend=None, extendfrac=None, extendrect=False, ticks=None, format=None, values=None, boundaries=None, spacing='uniform', drawedges=False, label='', cmap=None, norm=None, orientation=None, ticklocation='auto')[source]#
Bases:
objectZeichnet eine Farbseparation in einem bestehenden Achsenobjekt.
Typischerweise werden Farbseparationen über
Figure.colorbaroderpyplot.colorbarerstellt und mitScalarMappables (wie z.B. einemAxesImage, der überimshowerzeugt wird) assoziiert.Um eine Farbseparation zu zeichnen, die nicht mit anderen Elementen der Abbildung assoziiert ist, z.B. wenn eine Colormap allein angezeigt wird, kann man ein leeres
ScalarMappableerstellen oder direkt cmap und norm anstelle von mappable anColorbarübergeben.Nützliche öffentliche Methoden sind
set_label()undadd_lines().- Attribute:
- ax
Axes Die
Axes-Instanz, in die die Farbseparation gezeichnet wird.- lineslist
Eine Liste von
LineCollection(leer, wenn keine Linien gezeichnet wurden).- dividers
LineCollection Eine LineCollection (leer, wenn drawedges
Falseist).
- ax
- Parameter:
- ax
Axes Die
Axes-Instanz, in die die Farbseparation gezeichnet wird.- mappable
ScalarMappable Das Mappable-Objekt, dessen Colormap und Norm verwendet werden.
Um die Farben versus Index anstelle eines Skalenwerts von 0-1 anzuzeigen, setzen Sie die Norm des Mappable-Objekts auf
colors.NoNorm().- alphafloat
Die Transparenz der Farbseparation zwischen 0 (transparent) und 1 (opak).
- locationNone oder {'left', 'right', 'top', 'bottom'}
Setzt die orientation (Ausrichtung) und ticklocation (Position der Ticks) der Farbseparation. Farbseparationen links und rechts sind vertikal, Farbseparationen oben und unten sind horizontal. Die ticklocation ist dieselbe wie location, d.h. wenn location 'top' ist, befinden sich die Ticks oben. orientation und/oder ticklocation können ebenfalls angegeben werden und überschreiben den von location gesetzten Wert, aber bei inkompatiblen Kombinationen tritt ein Fehler auf.
Hinzugefügt in Version 3.7.
- extend{'neither', 'both', 'min', 'max'}
Erzeugt spitze Enden für Werte außerhalb des Bereichs (außer 'neither'). Diese werden für eine bestimmte Colormap über die Methoden set_under und set_over der Colormap gesetzt.
- extendfrac{None, 'auto', Länge, Längen}
Wenn auf None gesetzt, haben sowohl die minimale als auch die maximale dreieckige Farbleisten-Erweiterung eine Länge von 5 % der Länge der inneren Farbleiste (dies ist die Standardeinstellung).
Wenn auf 'auto' gesetzt, haben die dreieckigen Farbleisten-Erweiterungen dieselben Längen wie die inneren Boxen (wenn spacing auf 'uniform' gesetzt ist) oder dieselben Längen wie die jeweiligen angrenzenden inneren Boxen (wenn spacing auf 'proportional' gesetzt ist).
Wenn ein Skalar, gibt er die Länge sowohl der minimalen als auch der maximalen dreieckigen Farbleisten-Erweiterungen als Bruchteil der Länge der inneren Farbleiste an. Eine Sequenz von zwei Brüchen kann ebenfalls angegeben werden, die die Längen der minimalen und maximalen Farbleisten-Erweiterungen als Bruchteil der Länge der inneren Farbleiste angibt.
- extendrectbool
Wenn False, sind die minimale und maximale Farbleisten-Erweiterung dreieckig (Standard). Wenn True, sind die Erweiterungen rechteckig.
- ticksNone oder Liste von Ticks oder Locator
Wenn None, werden die Ticks automatisch aus der Eingabe bestimmt.
- formatNone oder str oder Formatter
Wenn None, wird
ScalarFormatterverwendet. Formatzeichenketten, z.B."%4.2e"oder"{x:.2e}", werden unterstützt. Alternativ kann einFormatterübergeben werden.- drawedgesbool
Ob Linien an den Farbgrenzen gezeichnet werden sollen.
- labelstr
Die Beschriftung der langen Achse der Farbleiste.
- boundaries, valuesNone oder eine Sequenz
Wenn nicht gesetzt, wird die Colormap auf einer Skala von 0-1 angezeigt. Wenn Sequenzen, muss values eine um 1 geringere Länge als boundaries haben. Für jede Region, die durch benachbarte Einträge in boundaries begrenzt wird, wird die Farbe verwendet, die dem entsprechenden Wert in values zugeordnet ist. Die Größe jeder Region wird durch den Parameter spacing bestimmt. Normalerweise nur nützlich für indizierte Farben (d. h.
norm=NoNorm()) oder andere ungewöhnliche Umstände.- spacing{'uniform', 'proportional'}
Für diskrete Farbseparationen (
BoundaryNormoder Konturen) gibt 'uniform' jeder Farbe den gleichen Raum; 'proportional' macht den Raum proportional zum Datenintervall.
- ax
- Andere Parameter:
- cmap
Colormap, Standard:rcParams["image.cmap"](Standard:'viridis') Die zu verwendende Colormap. Dieses Argument wird ignoriert, es sei denn, mappable ist None.
- norm
Normalize Die zu verwendende Normierung. Dieses Argument wird ignoriert, es sei denn, mappable ist None.
- orientationNone oder {'vertical', 'horizontal'}
Wenn None, wird der von location bestimmte Wert verwendet. Wenn sowohl orientation als auch location None sind, wird standardmäßig 'vertical' verwendet.
- ticklocation{'auto', 'left', 'right', 'top', 'bottom'}
Die Position der Ticks der Farbseparation. Die ticklocation muss mit der orientation übereinstimmen. Zum Beispiel kann eine horizontale Farbseparation nur Ticks oben oder unten haben. Wenn 'auto', sind die Ticks dieselben wie location, so dass eine Farbseparation links Ticks links hat. Wenn location None ist, befinden sich die Ticks bei einer horizontalen Farbseparation unten und bei einer vertikalen rechts.
- cmap
- add_lines(*args, **kwargs)[source]#
Zeichnet Linien auf der Farbseparation.
Die Linien werden an die Liste
linesangehängt.- Parameter:
- levelsarray-like
Die Positionen der Linien.
- colorsFarbe oder Liste von Farbe
Entweder eine einzelne Farbe, die auf alle Linien angewendet wird, oder ein Farbwert für jede Linie.
- linewidthsfloat oder array-like
Entweder eine einzelne Linienstärke, die auf alle Linien angewendet wird, oder eine Linienstärke für jede Linie.
- erasebool, Standard: True
Ob zuvor hinzugefügte Linien entfernt werden sollen.
Anmerkungen
Alternativ kann diese Methode auch mit der Signatur
colorbar.add_lines(contour_set, erase=True)aufgerufen werden, wobei levels, colors und linewidths von contour_set übernommen werden.
- get_ticks(minor=False)[source]#
Gibt die Ticks als Liste von Positionen zurück.
- Parameter:
- minorboolean, Standard: False
Wenn True, werden die Minor-Ticks zurückgegeben.
- property long_axis#
Achse, die Dekorationen (Ticks, etc.) aufweist.
- n_rasterize = 50#
- remove()[source]#
Entfernt diese Farbseparation aus der Abbildung.
Wenn die Farbseparation mit
use_gridspec=Trueerstellt wurde, wird das vorherige Gridspec wiederhergestellt.
- set_alpha(alpha)[source]#
Setzt die Transparenz zwischen 0 (transparent) und 1 (opak).
Wenn ein Array übergeben wird, wird alpha auf None gesetzt, um die mit der Colormap assoziierten Transparenzwerte zu verwenden.
- set_label(label, *, loc=None, **kwargs)[source]#
Fügt der langen Achse der Farbseparation eine Beschriftung hinzu.
- Parameter:
- labelstr
Der Beschriftungstext.
- locstr, optional
Die Position der Beschriftung.
Für horizontale Ausrichtung einer der Werte {'left', 'center', 'right'}
Für vertikale Ausrichtung einer der Werte {'bottom', 'center', 'top'}
Standardmäßig
rcParams["xaxis.labellocation"](Standard:'center') oderrcParams["yaxis.labellocation"](Standard:'center') abhängig von der Ausrichtung.- **kwargs
Schlüsselwortargumente werden an
set_xlabel/set_ylabelübergeben. Unterstützte Schlüsselwörter sind labelpad undText-Eigenschaften.
- set_ticklabels(ticklabels, *, minor=False, **kwargs)[source]#
[Nicht empfohlen] Setzt Tick-Labels.
Veraltet
Die Verwendung dieser Methode wird nicht empfohlen, da sie von den Tick-Positionen abhängt. In den meisten Fällen ist es besser,
set_ticks(positions, labels=labels)zu verwenden.Wenn Sie diese Methode verwenden, sollten Sie zuerst die Tick-Positionen festlegen, z.B. mit
Colorbar.set_ticksoder durch explizites Setzen einesFixedLocatorauf der langen Achse der Farbseparation. Andernfalls können sich die Ticks frei bewegen und die Labels an unerwarteten Positionen landen.- Parameter:
- ticklabelsSequenz von str oder von
Text Texte zur Beschriftung jeder Tick-Position in der von
Colorbar.set_ticksgesetzten Sequenz; die Anzahl der Labels muss mit der Anzahl der Positionen übereinstimmen.- update_ticksbool, Standard: True
Dieses Schlüsselwortargument wird ignoriert und entfernt. Veraltet
- minorbool
Wenn True, werden Minor-Ticks anstelle von Major-Ticks gesetzt.
- **kwargs
Text-Eigenschaften für die Labels. Diese wirken sich nur aus, wenn Sie labels übergeben. In anderen Fällen verwenden Sie bittetick_params.
- ticklabelsSequenz von str oder von
- set_ticks(ticks, *, labels=None, minor=False, **kwargs)[source]#
Setzt Tick-Positionen.
- Parameter:
- ticks1D Array-ähnlich
Liste von Tick-Positionen.
- labelsListe von str, optional
Liste von Tick-Labels. Wenn nicht gesetzt, zeigen die Labels den Datenwert an.
- minorbool, Standard: False
Wenn
False, werden die Haupt-Ticks gesetzt; wennTrue, die Minor-Ticks.- **kwargs
Text-Eigenschaften für die Labels. Diese werden nur wirksam, wenn Sie labels übergeben. In anderen Fällen verwenden Sie bittetick_params.
- update_normal(mappable=None)[source]#
Aktualisiert solide Patches, Linien usw.
Dies sollte aufgerufen werden, wenn sich die Norm des Bildes oder der Konturzeichnung, zu der diese Farbseparation gehört, ändert.
Wenn die Norm des Mappable-Objekts anders ist als zuvor, werden hierdurch der Locator und der Formatter für die Achse zurückgesetzt. Wenn diese zuvor angepasst wurden, müssen sie erneut angepasst werden. Wenn sich jedoch nur die Werte von vmin, vmax oder cmap in der Norm ändern, werden der alte Formatter und Locator beibehalten.
- matplotlib.colorbar.make_axes(parents, location=None, orientation=None, fraction=0.15, shrink=1.0, aspect=20, **kwargs)[source]#
Erstellt ein
Axes-Objekt, das für eine Farbseparation geeignet ist.Der Achsenbereich wird in der Abbildung der parents-Achsen platziert, indem die parents skaliert und neu positioniert werden.
- Parameter:
- parents
Axesoder Iterable odernumpy.ndarrayvonAxes Die Achsen, die als Eltern für die Platzierung der Farbseparation verwendet werden.
- locationNone oder {'left', 'right', 'top', 'bottom'}
Die Position relativ zu den übergeordneten Axes, an der die Farbleisten-Axes erstellt werden. Sie bestimmt auch die Ausrichtung der Farbleiste (Farbleisten links und rechts sind vertikal, Farbleisten oben und unten sind horizontal). Wenn None, stammt die Position aus der Ausrichtung, wenn diese gesetzt ist (vertikale Farbleisten rechts, horizontale unten), oder standardmäßig auf 'right', wenn orientation nicht gesetzt ist.
- orientationNone oder {'vertical', 'horizontal'}
Die Ausrichtung der Farbleiste. Es ist vorzuziehen, die Position der Farbleiste festzulegen, da diese auch die Ausrichtung bestimmt; das Übergeben inkompatibler Werte für location und orientation führt zu einer Ausnahme.
- fractionfloat, Standard: 0.15
Anteil der ursprünglichen Axes, der für die Farbleiste verwendet wird.
- shrinkfloat, Standard: 1.0
Faktor, mit dem die Größe der Farbleiste multipliziert wird.
- aspectfloat, Standard: 20
Verhältnis von langen zu kurzen Seiten.
- padfloat, Standard: 0.05 bei vertikal, 0.15 bei horizontal
Anteil der ursprünglichen Axes zwischen der Farbleiste und den neuen Bild-Axes.
- anchor(float, float), optional
Der Ankerpunkt der Farbleisten-Axes. Standardmäßig (0.0, 0.5) bei vertikaler Ausrichtung; (0.5, 1.0) bei horizontaler Ausrichtung.
- panchor(float, float), oder False, optional
Der Ankerpunkt der übergeordneten Axes der Farbleiste. Wenn False, bleibt der Anker der übergeordneten Axes unverändert. Standardmäßig (1.0, 0.5) bei vertikaler Ausrichtung; (0.5, 0.0) bei horizontaler Ausrichtung.
- parents
- Gibt zurück:
- cax
Axes Der Kind-Achsenbereich.
- kwargsdict
Das reduzierte Schlüsselwort-Dictionary, das beim Erstellen der Farbseparation-Instanz übergeben wird.
- cax
- matplotlib.colorbar.make_axes_gridspec(parent, *, location=None, orientation=None, fraction=0.15, shrink=1.0, aspect=20, **kwargs)[source]#
Erstellt ein
Axes-Objekt, das für eine Farbseparation geeignet ist.Der Achsenbereich wird in der Abbildung der parent-Achsen platziert, indem die parent skaliert und neu positioniert werden.
Diese Funktion ist ähnlich zu
make_axesund weitgehend mit ihr kompatibel. Die Hauptunterschiede sind:make_axes_gridspecerfordert, dass parent ein Subplotspec hat.make_axespositioniert die Achsen in Abbildungskoordinaten;make_axes_gridspecpositioniert sie über ein Subplotspec.make_axesaktualisiert die Position des Elternteils.make_axes_gridspecersetzt die Eltern-GridSpec durch eine neue.
- Parameter:
- parent
Axes Die Achsen, die als Elternteil für die Platzierung der Farbleiste verwendet werden sollen.
- locationNone oder {'left', 'right', 'top', 'bottom'}
Die Position relativ zu den übergeordneten Axes, an der die Farbleisten-Axes erstellt werden. Sie bestimmt auch die Ausrichtung der Farbleiste (Farbleisten links und rechts sind vertikal, Farbleisten oben und unten sind horizontal). Wenn None, stammt die Position aus der Ausrichtung, wenn diese gesetzt ist (vertikale Farbleisten rechts, horizontale unten), oder standardmäßig auf 'right', wenn orientation nicht gesetzt ist.
- orientationNone oder {'vertical', 'horizontal'}
Die Ausrichtung der Farbleiste. Es ist vorzuziehen, die Position der Farbleiste festzulegen, da diese auch die Ausrichtung bestimmt; das Übergeben inkompatibler Werte für location und orientation führt zu einer Ausnahme.
- fractionfloat, Standard: 0.15
Anteil der ursprünglichen Axes, der für die Farbleiste verwendet wird.
- shrinkfloat, Standard: 1.0
Faktor, mit dem die Größe der Farbleiste multipliziert wird.
- aspectfloat, Standard: 20
Verhältnis von langen zu kurzen Seiten.
- padfloat, Standard: 0.05 bei vertikal, 0.15 bei horizontal
Anteil der ursprünglichen Axes zwischen der Farbleiste und den neuen Bild-Axes.
- anchor(float, float), optional
Der Ankerpunkt der Farbleisten-Axes. Standardmäßig (0.0, 0.5) bei vertikaler Ausrichtung; (0.5, 1.0) bei horizontaler Ausrichtung.
- panchor(float, float), oder False, optional
Der Ankerpunkt der übergeordneten Axes der Farbleiste. Wenn False, bleibt der Anker der übergeordneten Axes unverändert. Standardmäßig (1.0, 0.5) bei vertikaler Ausrichtung; (0.5, 0.0) bei horizontaler Ausrichtung.
- parent
- Gibt zurück:
- cax
Axes Der Kind-Achsenbereich.
- kwargsdict
Das reduzierte Schlüsselwort-Dictionary, das beim Erstellen der Farbseparation-Instanz übergeben wird.
- cax