Matplotlib-Konturdiagramm

Salman Mehmood 15 Februar 2024
  1. Verwenden Sie die contour()-Methode, um Contour Plot in Matplotlib zu erhalten
  2. Verwenden Sie die contourf()-Methode in Matplotlib
Matplotlib-Konturdiagramm

In dieser Demonstration werden wir sehen, was ein Konturplot ist und wie wir Konturplots mit Hilfe der contour()-Methode in Matplotlib erhalten können.

Verwenden Sie die contour()-Methode, um Contour Plot in Matplotlib zu erhalten

Die Konturdiagramme zeigen eine dreidimensionale Oberfläche auf einer zweidimensionalen Ebene. Es stellt zwei vorhergesagte Variablen, x und y, auf der y-Achse und eine Antwortvariable, z, als Konturen dar.

Ein Konturdiagramm in zwei Dimensionen ist die Isolinie eines Skalarfeldes, das von zwei Variablen abhängt. Lassen Sie uns die Variablen in jeder der Achsen diskretisieren.

Wir beginnen mit einer diskretisierten x-Komponente, die wir mit Hilfe von numpy.linspace() erstellen können. Dann importieren wir numpy.

Wir möchten, dass x linear von -2 bis 2 mit 500-Werten beabstandet ist. Für y wollen wir dasselbe tun.

import matplotlib.pyplot as plot
import numpy as np

x = np.linspace(-2, 2, 500)
y = np.linspace(-2, 2, 500)

Wir können mit der np.meshgrid()-Methode ein zweidimensionales Netz erstellen, das in Großbuchstaben x und Großbuchstaben y gespeichert wird. Dann können wir unser Skalarfeld mit dem Sinus von x und dem Kosinus von y auswerten.

x, y = np.meshgrid(x, y)
z = np.sin(x) + np.cos(y)

Der Konturplot wird mit der Methode contour() erstellt und akzeptiert drei Parameter. Wir sehen die Isolinien der Funktion zusammen mit einem Farbschlüssel.

Für den Wert des Skalarfeldes an dieser Position können wir mit plot.colorbar() eine Farbskala aktivieren, um Informationen darüber zu erhalten, welcher Wert mit einer bestimmten Farbe angezeigt wird.

plot.contour(x, y, z)
plot.colorbar()

Vollständiger Quellcode:

import matplotlib.pyplot as plot
import numpy as np

x = np.linspace(-2, 2, 500)
y = np.linspace(-2, 2, 500)
x, y = np.meshgrid(x, y)
z = np.sin(x) + np.cos(y)

plot.contour(x, y, z)
plot.colorbar()
plot.show()

Ausgang:

Verwenden Sie die Konturmethode, um ein Konturdiagramm zu erhalten

Verwenden Sie die contourf()-Methode in Matplotlib

Eine andere Methode namens contourf() erstellt einen Konturplot, aber die dazwischen liegenden Bereiche werden mit dem entsprechenden Farbwert gefüllt.

Code:

import matplotlib.pyplot as plot
import numpy as np

x = np.linspace(-2, 2, 500)
y = np.linspace(-2, 2, 500)
x, y = np.meshgrid(x, y)
z = np.sin(x) + np.cos(y)

plot.contourf(x, y, z)
plot.colorbar()
plot.show()

Ausgang:

Verwenden Sie die Methode contourf () in Matplotlib

Mit dem Argument Ebenen können wir die Anzahl der Ebenen ändern. Die Ebenen sind die Anzahl der Isolinien.

Lassen Sie uns zum Beispiel 30 Isolinien erstellen und dann sehen, dass der Übergang viel glatter ist. Wir können auch manuell auswählen, von welchem Wert zu welchem Wert wir Isolinien haben möchten, z. B. wobei vmin -1 und vmax 0,5 ist.

Wenn wir den folgenden Code ausführen, können wir den gelben Bereich nicht mit Isolinien abdecken, da sein Wert zu hoch ist.

Code:

import matplotlib.pyplot as plot
import numpy as np

x = np.linspace(-2, 2, 500)
y = np.linspace(-2, 2, 500)
x, y = np.meshgrid(x, y)
z = np.sin(x) + np.cos(y)

plot.contourf(x, y, z, levels=30, vmin=-1, vmax=0.5)
plot.colorbar()
plot.show()

Ausgang:

Ändern Sie die Anzahl der Ebenen und wählen Sie manuell aus, welcher Wert Isolinien haben soll

Salman Mehmood avatar Salman Mehmood avatar

Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.

LinkedIn

Verwandter Artikel - Matplotlib Plot