Heim >Backend-Entwicklung >Python-Tutorial >Wie erstelle ich mit Matplotlib benutzerdefinierte Farbkarten und Farbskalen?

Wie erstelle ich mit Matplotlib benutzerdefinierte Farbkarten und Farbskalen?

DDD
DDDOriginal
2024-11-13 02:31:02971Durchsuche

How to Create Custom Colormaps and Color Scales with Matplotlib?

Erstellen benutzerdefinierter Farbkarten und Farbskalen mit Matplotlib:

Das Erstellen einer benutzerdefinierten Farbkarte in Matplotlib ist ein unkomplizierter Prozess. Um eine kontinuierliche (glatte) Farbskala einzurichten, sollten Sie die Verwendung der LinearSegmentedColormap anstelle der ListedColormap in Betracht ziehen.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors

# Defining random data points
x, y, c = zip(*np.random.rand(30, 3)*4 - 2)

# Establishing normalization parameters
norm = plt.Normalize(-2, 2)

# Generating a linear segmented colormap from a list
colormap = matplotlib.colors.LinearSegmentedColormap.from_list("", ["red", "violet", "blue"])

# Plotting the points with the custom colormap
plt.scatter(x, y, c=c, cmap=colormap, norm=norm)

# Adding a color scale to the plot
plt.colorbar()

plt.show()

Diese Methode gewährleistet einen nahtlosen Farbübergang zwischen den angegebenen Werten.

Weitere Anpassungen sind möglich durch Bereitstellung von Tupeln normalisierter Werte und entsprechender Farben für die from_list-Methode.

# Custom values and colors
custom_values = [-2, -1, 2]
custom_colors = ["red", "violet", "blue"]

# Generating a segmented colormap from custom tuples
colormap = matplotlib.colors.LinearSegmentedColormap.from_list("", list(zip(map(norm, custom_values), custom_colors)))

# Applying the colormap to the plot
plt.scatter(x, y, c=c, cmap=colormap, norm=norm)
plt.colorbar()

plt.show()

Durch die Verwendung dieser Technik wird Sie können personalisierte Farbkarten erstellen, die Ihre Daten präzise darstellen.

Das obige ist der detaillierte Inhalt vonWie erstelle ich mit Matplotlib benutzerdefinierte Farbkarten und Farbskalen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn