Ich benutze Pandas und Matplotlib, um Balkengrafiken mit vielen Balken zu erzeugen.
Ich kann durch eine Liste ausgewählter Farben blättern ( Wie man ein pandas / matplotlib Balkendiagramm benutzerdefinierte Farben gibt). Die Frage ist, welche Farben auszuwählen sind, damit mein Graph auf einem Papier gut gedruckt wird (es ist für eine Forschungsarbeit). Was mich am meisten interessiert, ist ein ausreichender Kontrast zwischen den Säulen und einer Auswahl von Farben, die angenehm aussehen. Ich hätte gerne mehrere Farben anstelle von Graustufen- oder Einzelfarbschemen.
Gibt es irgendwelche vorgegebenen Schemata, die man aus diesen Leuten auswählen kann?
In 1.5 wird matplotlib mit 4 neuen rational gestalteten Farbkarten ausgeliefert:
'viridis'
(wird in 2.0 als Standardfarbkarte verwendet) 'magma'
'plasma'
Das Design dieser Farbkarten wird in Ссылка dargestellt.
Das für diesen Prozess entwickelte Tool kann von 'inferno'
Ich würde die Farbkarte pip install viscm
vorschlagen. Es ist entworfen , um eine korrekte Helligkeitsordnung in Farbe und Graustufen zu haben
Ihre Anforderungen sind also "viele Farben" und "keine zwei Farben sollten beim Drucken auf denselben Graustufenwert abgebildet werden", richtig? Das zweite Kriterium sollten alle "sequentiellen" Colormaps erfüllen (die monoton in der Leuchtdichte zunehmen oder abnehmen). Ich denke von all den Möglichkeiten in Matplotlib, bleiben Sie mit cubehelix
(bereits erwähnt), gnuplot
und gnuplot2
:
Die weiße Linie ist die Luminanz jeder Farbe. Sie können also sehen, dass jede Farbe beim Drucken einem anderen Graustufenwert zugeordnet wird. Die schwarze Linie ist Farbton und zeigt an, dass sie durch eine Vielzahl von Farben durchlaufen.
Beachten Sie, dass cubehelix eigentlich eine Funktion ist ( from matplotlib._cm import cubehelix
), und Sie können die Parameter der Helix anpassen, um Farben mit einer größeren Variation zu erzeugen, wie hier gezeigt . Mit anderen Worten, cubehelix ist keine Colormap, sondern eine Familie von Colormaps. Hier sind 2 Variationen:
Für weniger stark variierende Farben (angenehmer für viele Dinge, aber vielleicht nicht für Ihre Balkendiagramme), probieren Sie vielleicht die ColorBrewer 3-Farben-Karten, YlOrRd
, PuBuGn
, YlGnBu
:
Ich würde jedoch nicht empfehlen, nur diese Farbe zu verwenden, um Balkendiagramme zu identifizieren. Sie sollten immer Textbeschriftungen als primäre Kennung verwenden. Beachten Sie auch, dass einige davon weiße Balken erzeugen, die sich vollständig in den Hintergrund einfügen, da sie für Heatmaps gedacht sind, nicht für Diagrammfarben:
%Vor%Und das sind die neuen Leute:
Ich kenne keine vorgegebenen Schemata. Normalerweise verwende ich ein paar Farben für Publikationsflächen. Bei der Auswahl der Farben berücksichtige ich meistens zwei Dinge:
Wenn in Matplotlib-Plots keine Farben angegeben sind, hat es eine Standardmenge von Farben, die durchlaufen werden. Diese Antwort enthält eine gute Erklärung dazu, wie Sie diesen Standardfarbsatz ändern können. Sie können dies an Ihre bevorzugten Farben anpassen, sodass die Plots diese wiederum verwenden.
Tags und Links printing matplotlib pandas