Farben in Python
Dieser Artikel zielt darauf ab, die benannten Farben vorzustellen, die vom Modul Matplotlib
in Python zur Darstellung von Graphen verwendet werden. Beim Plotten von Graphen bietet Python den Benutzern die Möglichkeit, benannte Farben auszuwählen, die durch seine Matplotlib
-Bibliothek angezeigt werden.
In Python werden die Farbnamen und ihre hexadezimalen Codes aus einem Dictionary im Modul color.py
abgerufen.
Im folgenden Code drucken wir die Namen der Farben in diesem Modul.
import matplotlib
for cname, hex in matplotlib.colors.cnames.items():
print(cname, hex)
Ausgabe:
'aliceblue': '#F0F8FF',
'antiquewhite': '#FAEBD7',
'aqua': '#00FFFF',
'aquamarine': '#7FFFD4',
'azure': '#F0FFFF',
'beige': '#F5F5DC',
'bisque': '#FFE4C4',
'black': '#000000',
'blanchedalmond': '#FFEBCD',
'blue': '#0000FF',
'blueviolet': '#8A2BE2',
'brown': '#A52A2A',
'burlywood': '#DEB887',
'cadetblue': '#5F9EA0',
...more
matplotlib.colors.cnames.items()
gibt die Sammlung von Dictionaries zurück, in denen die Namen und Codes der Farbe gespeichert sind. Der Name wird als Schlüssel des Dictionaries und der Hexadezimalcode als Wert gespeichert.
Wir können diese Farben mit verschiedenen Arten von Grafiken und Abbildungen mit kompatiblen Bibliotheken verwenden. Wir können alle diese Farben in einem einzigen Diagramm darstellen und jede Farbe vergleichen.
Siehe den folgenden Code.
import matplotlib.pyplot as plt
import matplotlib.patches as patches
import matplotlib.colors as colors
import math
fig = plt.figure()
ax = fig.add_subplot(111)
ratio = 1.0 / 3.0
count = math.ceil(math.sqrt(len(colors.cnames)))
x_count = count * ratio
y_count = count / ratio
x = 0
y = 0
w = 1 / x_count
h = 1 / y_count
for cl in colors.cnames:
pos = (x / x_count, y / y_count)
ax.add_patch(patches.Rectangle(pos, w, h, color=cl))
ax.annotate(cl, xy=pos)
if y >= y_count - 1:
x += 1
y = 0
else:
y += 1
plt.show()
Ausgabediagramm:
Im obigen Code haben wir jede Farbe mit ihrem jeweiligen Namen gezeichnet. Wir haben die Figur in mehrere Unterplots unterteilt und jede Farbe in einem kleinen rechteckigen Feld mit der Funktion add_patch()
auf jeder Achse für jede Farbe aufgetragen.