Colorplot eines 2D-Arrays Matplotlib

Suraj Joshi 15 Februar 2024
  1. Plotten eines 2D-Arrays in Matplotlib mit der Methode matplotlib.pyplot.imshow()
  2. 2D-Array in Matplotlib mit der Methode matplotlib.pyplot.pcolormesh() plotten
Colorplot eines 2D-Arrays Matplotlib

Dieses Tutorial erklärt, wie man mit den Methoden matplotlib.pyplot.imshow() und matplotlib.pyplot.pcolormesh() in Python einen colorplot von 2D-Arrays erzeugen kann.

Plotten eines 2D-Arrays in Matplotlib mit der Methode matplotlib.pyplot.imshow()

Die Methode matplotlib.pyplot.imshow() nimmt ein 2D-Array als Eingabe und rendert das gegebene Array als Rasterbild.

Syntax von matplotlib.pyplot.imshow()

matplotlib.pyplot.imshow(X,
                         cmap=None,
                         norm=None,
                         aspect=None,
                         interpolation=None,
                         alpha=None,
                         vmin=None,
                         vmax=None,
                         origin=None,
                         extent=None, *,
                         filternorm=True,
                         filterrad=4.0,
                         resample=None,
                         url=None,
                         data=None,
                         **kwargs)

matplotlib.pyplot.imshow() Beispiel

import numpy as np
import matplotlib.pyplot as plt

X = np.random.randint(256, size=(10, 10))

fig = plt.figure(figsize=(8, 6))
plt.imshow(X)
plt.title("Plot 2D array")
plt.show()

Ausgabe:

2D-Array Matplotlib mit imshow plotten

Es wird das mit numpy.random.randint() erstellte 2D-Array der Größe 10*10 geplottet. Standardmäßig werden die Werte mit der Farbzuordnung viridis abgebildet.

Wir können den Parameter cmap in der Methode imshow() setzen, um die Farbzuordnung zu ändern.

import numpy as np
import matplotlib.pyplot as plt

X = np.random.randint(256, size=(10, 10))

fig = plt.figure(figsize=(8, 6))
plt.imshow(X, cmap="inferno")
plt.title("Plot 2D array")
plt.colorbar()
plt.show()

Ausgabe:

Set cmap Plot 2D-Array Matplotlib mit imshow

Es wird der 2D-Array Plot mit der inferno Colormap angezeigt. Wir sehen auch einen Farbbalken auf der rechten Seite des Plots, der uns sagt, welche Werte im Array auf welche Farben abgebildet sind.

2D-Array in Matplotlib mit der Methode matplotlib.pyplot.pcolormesh() plotten

Die Funktion matplotlib.pyplot.pcolormesh() erzeugt einen Pseudo-Farbplot in Matplotlib. Sie ist ähnlich wie die Funktion matplotlib.pyplot.pcolor().

import numpy as np
import matplotlib.pyplot as plt

X = np.random.randint(256, size=(10, 10))

fig = plt.figure(figsize=(8, 6))
plt.pcolormesh(X, cmap="plasma")
plt.title("Plot 2D array")
plt.colorbar()
plt.show()

Ausgabe:

2D-Array in Matplotlib mit pcolormesh plotten

Es wird das mit numpy.random.randint() erzeugte 2D-Array der Größe 10*10 mit plasma colormap geplottet. Der Farbbalken auf der rechten Seite stellt die Farben dar, die verschiedenen Wertebereichen zugeordnet sind.

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn