Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Eine Einführung in Matplotlib in Python

mathplotlib-in-python
Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Matplotlib ist eine Python-Plotbibliothek, die Experten für maschinelles Lernen hauptsächlich verwenden, um statische und interaktive Visualisierungen zu erstellen.

What is Matplotlib

Mathplotlib ist eine Kreation von John D. Hunter aus dem Jahr 2003, die am 8. Mai 2021 veröffentlicht wurde und eine aktuelle Version von 3.4.2 hat.

Diese Bibliothek ist hauptsächlich in Python geschrieben, während der Rest in C Objective und JavaScript geschrieben ist, wodurch sie plattformkompatibel ist.

Matplotlib verwendet NumPy, was eine numerische Python-Erweiterung ist. Seine Erweiterung mit NumPy fügt seine Lebensfähigkeit als Open-Source-Alternative hinzu und macht es zu einer besseren Präferenz als MATLAB.

Für Python-GUI-Anwendungen ermöglicht Matplotlib das Zeichnen statischer Diagramme darauf mithilfe der mitgelieferten objektorientierten API.

Benutzer können nur wenige geschriebene Zeilen Python-Code verwenden, um ihre Daten mithilfe verschiedener Diagramme zu visualisieren, darunter Streudiagramme, Histogramme, Balkendiagramme, Tortendiagramme, Liniendiagramme und Boxplots.

Sie können Matplotlib verwenden, um Diagramme in Umgebungen zu erstellen, einschließlich Python-Shell, Jupyter Notizbuch,
Jupyter Lab und auch mit Pycharm oder Anaconda und auf Webanwendungsservern wie Flask und Django auf verschiedenen Plattformen.

Wie in MATLAB können Sie die Plots in Bezug auf Schriftarten, Linien, Farben und Stile umfassend steuern.

Lassen Sie uns nach der kurzen Einführung der Matplotib-Bibliothek in Python sehen, wie wir sie in unseren Systemen einrichten können.

Setting up Matplotlib environment

Wie jede andere Python-Paket und Bibliothek können Sie die vorkompilierte Matplotlib-Bibliothek und ihre Pakete mit dem pip-Paketmanager auf allen Betriebssystemen installieren.

Natürlich müssen Sie zuerst Python und das Pip-Paket auf Ihrem System installieren.

Die folgenden Befehle zeigen die Version von Python und Pip an, um zu bestätigen, ob diese Tools bereits installiert sind.

Überprüfen Sie, ob Python installiert ist

Python --version

Überprüfen Sie, ob Pip installiert ist

pip -V

Installieren Sie Mathplotlib

Der folgende Befehl installiert das Matplotlib-Paket aus dem Python-Paketindex (PyPI).

python -m pip install matplotlib

Dieser Befehl lädt die relevanten Pakete von Matplotlib herunter und installiert sie. Nach Abschluss der Installation sollte eine erfolgreiche Installationsmeldung angezeigt werden.

Um sicherzustellen, dass Matplotlib erfolgreich installiert wurde, geben Sie den folgenden Befehl ein, der die Version von Matplotlib in Ihrer Eingabeaufforderung anzeigt.

import matplotlib
matplotlib.__version__

Entwickler, die das unkompilierte Matplotlib-Paket installieren möchten, müssen zusätzlich zu Abhängigkeiten, Setup-Skripten, Konfigurationsdateien und Patches Zugriff auf den richtigen Compiler in ihrem System haben.

Diese spezielle unkompilierte Matplolib-Installation kann jedoch kompliziert sein, insbesondere für Matplotlib-Neulinge. Warum also nicht einfach einen einzeiligen Befehl verwenden, um die Bibliothek in Sekundenschnelle zu installieren?🤔

Importieren Sie nach der Installation von Matplotlib das Paket in Ihre Umgebung, um auf seine Dienstprogramme zuzugreifen.

Matplotlib plotting options

Matplotlib bietet zahlreiche Plotoptionen zur Visualisierung von Daten. Es ermöglicht auch die Anpassung der Diagramme, indem verschiedene Themen, Farben und Palettenoptionen bereitgestellt werden, die der Benutzer verwenden kann, um die Diagramme zu manipulieren.

Diese Plotoptionen umfassen:

# 1. Balkendiagramme

Balkendiagramme, bekannt als Balkendiagramme, sind eine geeignete Option, um einen quantitativen Vergleich von Werten innerhalb derselben Kategorie zu visualisieren.

Balkendiagramm-1

Matplotlib stellt dieses Diagramm mit rechteckigen Balken dar, deren Längen und Höhen ihre proportionalen Werte darstellen. Die Balken können entweder horizontal oder vertikal sein.

Matplotlib verwendet seine plt.bar() Funktion zum Erstellen des Balkendiagramms.

Darüber hinaus können Sie weitere Funktionen verwenden, um dieses Diagramm zu manipulieren. Zum Beispiel die plt.xlabel() und plt.ylabel() Funktionen beschriften die x- und y-Achsen des Graphen, beziehungsweise.

Die plt.title() Mit der Funktion können Sie Ihrer Handlung auch einen Titel geben, während die plt.savefig() Funktion speichert den Plot. Das plot.show() Funktion, die die wichtigste ist, zeigt den Plot an.

# 2. Tortendiagramme

Sie können die proportionale Verteilung der Elemente innerhalb derselben Kategorie mithilfe eines kreisförmigen statistischen Diagramms visualisieren, das wir Tortendiagramme nennen.

Tortendiagramme zeigen Daten in Prozentform an. Der gesamte Bereich des Diagramms entspricht dem Prozentsatz der gesamten Daten, während die einzelnen Tortenstücke Abschnitte des Prozentsatzes der Daten darstellen.

pie-chart

Matplotlib verwendet die plt.pie() Funktion, die die Parameter des Tortendiagramms zeichnet und anpasst.
Weitere Parameter wie die autopct die den Tortendiagrammwert bis auf 1 Dezimalstelle drucken, sind beim Plotten von Tortendiagrammen nützlich.

Unternehmensorganisationen finden Tortendiagramme nützlich, um relevante Informationen wie Betrieb, Umsatz oder Ressourcen darzustellen.

# 3. Histogramm

Ein Histogramm zeigt die numerische Datenverteilung an. Es verwendet kontinuierliche Intervalle, um die Daten in verschiedene Abschnitte zu unterteilen.

Der Hauptunterschied zwischen einem Histogramm und einem Balkendiagramm ist die Art der Daten, die sie verarbeiten. Während Histogramme den kontinuierlichen Datentyp verarbeiten, verarbeiten Balkendiagramme stattdessen kategoriale Daten.

Histogramm

Matplotlib verwendet die hist() Funktion, die ein Array von zufälligen oder definierten Werten verwendet, um das Histogramm zu erstellen.

# 4. Liniendiagramme

Diese Diagramme sind nützlich, um die Beziehung zwischen zwei Datenwerten, die wir als numerisch und kategorial definieren, auf einer X- und Y-Basis darzustellen.

Liniendiagramm

Liniendiagramme sind wichtig, um die Änderung der Datenwerte über einen bestimmten Zeitraum zu verfolgen.

# 5. Streudiagramme

Streudiagramme verdeutlichen die Beziehung, einschließlich der Korrelation zwischen den Variablen in den Daten. Es ist auch nützlich, um Ausreißer zu identifizieren.

Streudiagramm

Streudiagramme verwenden Punkte, um die Beziehung der Datenvariablen darzustellen und wie sich eine Änderung einer Variablen auf eine andere auswirken kann.

How to create plots in Matplotlib

Matplotlib verwendet verschiedene Funktionen, um verschiedene Diagramme zu erstellen. Es verwendet auch nur sehr wenige Codezeilen, um den Plot zu erstellen.

Unten sehen wir, wie man die verschiedenen Plot-Optionen mit verschiedenen Funktionen in Matplotlib erstellt.

# 1. Balkendiagramm in Matplotlib

Balkendiagramme zeigen, wie oben erläutert, Datenkategorien unter Verwendung von Balken und Achsen an, die einen Vergleich von Kategorien auf einer Achse und entsprechenden Werten der Kategorien auf der anderen Achse darstellen.

Die bar() Die Funktion in Matplotlib verwendet verschiedene Argumentlayouts, um das Layout der Balken zu beschreiben, wie unten gezeigt.

plt.bar(x, y, height, width, bottom, align)

Die x- und y-Parameter repräsentieren die x-Koordinatenwerte und y-Koordinatenwerte des Balkens im Diagramm. Der Breitenparameter stellt die Breite des Balkens dar, während der Höhenparameter die Höhe des Balkens darstellt.

Stellen wir zum Beispiel die Anzahl der Hunde und Katzen in einem Tierheim namens x dar.

import matplotlib.pyplot as plt
import numpy as np

x = ["Cats", "Dogs"]
plt.xlabel("Cats and Dogs in Shelter")
plt.ylabel("No. of animals in Shelter")
plt.title("Number of cats and dogs in shelter x")
y = [300, 350]
plt.bar(x, y, color ='black', width = 0.5)

Ausgang:

bar_plot
Ausgabe des Balkendiagramms in Mathplotlib

Wie in unserem obigen Beispiel können Sie die Farbe der Balken mit dem Attribut color weiter spezifizieren. Außerdem die plt.xlabel and p.ylabel name the x and y axes, jeweils während plt.title benennt die Handlung.

# 2. So erstellen Sie ein Tortendiagramm

Matplotlib verwendet die pie() Funktion, die mit der kommt pyplot Modul zum Zeichnen eines Tortendiagramms.
Die Funktion stellt die zu plottenden Daten in Arrayform dar.

Syntax:

matplotlib.pyplot.pie(data, explode=None, labels=None, colors=None, autopct=None, shadow=False)

Der Parameter colors legt die Farbe der Tortenstücke fest. Sie können ein Array von Werten verwenden, um eine Farbe für jedes Segment anzugeben.

Um weitere Details zu jedem Stück des Kuchens aufzunehmen, die autopct -Argument fügt die numerischen Prozentsätze hinzu, die jedes Segment darstellt, wobei die String-Formatierungsnotation von Python verwendet wird. Die Explosion als Argument akzeptiert ein Array von Werten, die bei 0.1 beginnen, um den Abstand des Segments von der Mitte des Kuchens zu definieren.

Zeichnen wir ein Tortendiagramm, das Ressourcen in Prozent anzeigt, die einem bestimmten Projekt zugewiesen sind.

import matplotlib.pyplot as plt
import numpy as np

y = np.array([25, 10, 45, 20])
mylabels = ["w", "x", "y", "z"]
explodevalues = [0.1, 0.2, 0, 0]
colors = ['tab:blue', 'tab:green', 'tab:orange', 'tab:red']
plt.title("Resources allocated for a random project")
plt.pie(y, labels = mylabels, colors=colors,explode = explodevalues, autopct='%1.1f%%', shadow = True)
plt.show() 

Ausgang:

Tortendiagramm
Ausgabe des Kreisdiagramms in Mathplotlib

Das obige Diagramm zeigt ein Tortendiagramm mit vier Abschnitten, die jeweils mit w, x, y und z bezeichnet sind. Die Explosionswerte definieren, wie weiter entfernt von der Mitte des Kuchens die Segmente platziert werden.

Aus dem obigen Diagramm ist x weiter entfernt, da sein Explosionswert größer als der Rest ist. Das Schattenattribut fügt dem Tortendiagramm einen Schatten hinzu, wie im Bild while autopct legt den relativen Prozentsatz zum gesamten Kuchen fest, den jedes Segment darstellt.

# 3. Erstellen eines Histogrammdiagramms

Bei einem Histogramm verwenden wir eine Reihe von Intervallen, um den Bereich der gegebenen Werte auf der x-Achse darzustellen.
Die y-Achse hingegen repräsentiert die Frequenzinformationen.

Im Gegensatz zu den anderen Diagrammen erfordert das Zeichnen eines Histogramms in Matplotlib einige vordefinierte Schritte, die Sie befolgen müssen, um das Diagramm zu erstellen.

Diese Schritte umfassen:

  1. Erstellen Sie eine Bin mit Bereichen aus dem Satz von Datenwerten, die Sie haben. Du kannst den ... benutzen np.random.normal() Funktion, die zufällige Werte für Sie generieren kann.
  2. Verteilen Sie Werte mithilfe einer Reihe von Intervallen in einen Wertebereich.
  3. Zählen Sie die Werte, die in jedes bestimmte Intervall fallen.
  4. Jetzt benutzen matplotlib.pyplot.hist() Funktion zum Erstellen des Histogramms.

Die hist() Funktion übernimmt mehrere Parameter, einschließlich:

x – Dies repräsentiert die Array-Sequenz

bins – Dies ist ein optionaler Parameter, der nicht überlappende Intervalle von Variablen darstellt, die ganze Zahlen oder eine Zeichenfolgenfolge enthalten können.

range – Definiert den oberen und unteren Bereich der Bins

align – Dieser Parameter steuert die Ausrichtung des Histogramms. Ob links, rechts oder mittig.

color – Definiert die Farbe der Balken.

rwidth – Setzt die relative Breite der Balken im Histogramm auf die des Bins.

log – Der Log-Parameter definiert eine Log-Skala auf der Achse eines Histogramms.

Das folgende Beispiel zeichnet ein Histogramm mit den definierten Werten.

from matplotlib import pyplot as plt

x = [22, 40, 87, 5, 43, 30, 56,73, 55, 54, 11, 20, 51, 5,  50, 60, 70, 80]

plt.hist(x)
plt.title(Histogram plot example')
plt.xlabel('x axis')
plt.ylabel('frequency')
plt.show()

Ausgang:

Bild zur Anzeige des Histogrammdiagramms
Ausgabe des Histogrammplots in Mathplotlib

# 4. Liniendiagramm in Matplotlib

Matplotlib verwendet seine Unterbibliothek namens pyplot , das mit verschiedenen Funktionen ausgestattet ist, die bei der Implementierung helfen.

Wir nutzen die plot() Funktion, die eine generische Funktion ist, die mitgeliefert wird pyplot zum Zeichnen von Liniendiagrammen und verschiedenen anderen Arten von Liniendiagrammen, einschließlich Kurvendiagrammen und Mehrfachliniendiagrammen. Das Erstellen dieser verschiedenen Arten von Diagrammen hängt von den Werten ab, die Sie an die Y-Achse übergeben.

Importieren Sie beim Plotten matplotlib.pyplot und Numpy, die die Charts zeichnen. Das plot(x,y) -Methode erstellt das Liniendiagramm, indem sie zufällige Werte an die x- und y-Argumente übergibt.

Zusätzlich können Sie eine Beschriftungsvariable übergeben, die den Plot beschriftet. Die Titelfunktion benennt außerdem den Titel des Diagramms, während die xlabel- und ylabel-Funktionen die Achsen benennen. Schließlich zeigt die Funktion show() den Plot an.

Beispielsweise:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 5, 10)

y = 3*x + 2
plt.title('Line plot example')
plt.xlabel('x axis')
plt.ylabel('y axis')
plt.plot(x, y)
plt.show()

Ergebnis:

line_plot-1
Ausgabe des Liniendiagramms in Mathplotlib

Die np.linspace -Attribut gibt auf dem Diagramm eine Reihe gleichmäßig verteilter Zahlen über ein bestimmtes Intervall für die x-Werte zurück. Dadurch wird ein Array mit 10 Werten im Bereich von erstellt 0 and 5. Die y-Werte werden aus der Gleichung erstellt, die entsprechende x-Werte verwendet.

Streudiagramme erstellen

Matplotlib verwendet die Methode scatter(), um dieses Diagramm zu erstellen.
Diese Methode übernimmt die folgenden Parameter.

matplotlib.pyplot.scatter(x_axis_data, y_axis_data, s=None, c=None, marker=None, cmap=None, vmin=None, vmax=None, alpha=None, linewidths=None, edgecolors=None) 

Die Parameter x_axis_data und y_axis_data können nicht leer gelassen werden, im Gegensatz zu den übrigen Parametern, die optional sein können und None als Wert haben. Während das Argument x_axis_data ein Array von Daten für die x-Achse definiert, legt das Argument y_axis_data ein Array von Daten für die y-Achse fest.

Ein Beispiel für ein Streudiagramm in Matplotlib

import matplotlib.pyplot as plt
 
x =[15, 17, 18, 27, 22, 27, 32, 14, 11, 12, 29, 16]
 
y =[19, 16, 17, 18, 10, 26, 13, 27, 14, 18, 17, 35]
plt.title('Scatter plot example')
plt.xlabel('x variable')
plt.ylabel('y variable')
plt.scatter(x, y, c ="green")
 
# To show the plot
plt.show()

Seine Ausgabe wird mögen:

Bild zur Darstellung des Streudiagramms in Matplotib
Ausgabe des Streudiagramms in Mathplotlib

What is subplot() in matplotlib

Die subplot() Funktion kann verwendet werden, um mehrere Plots auf einer einzigen Matplotlib-Figur zu zeichnen. Dies ermöglicht das Betrachten und Vergleichen der mehreren Plots innerhalb der Figur.

Diese Funktion gibt ein Tupel mit drei Argumenten zurück; Zeilen und Spalten als erstes bzw. zweites Argument und den Index des aktuellen Diagramms als drittes Argument.

Die Zeilen und Spalten definieren klar das Layout der Matplotlib.

Deswegen, plt.subplot(2, 1, 1) wird beispielsweise eine Matplotlib-Figur mit zwei Zeilen und einer Spalte zeichnen, und dieses Diagramm wird das erste Diagramm sein.

Auf der anderen Seite, plt.subplot(2, 1, 2) zeigt ein zweites Diagramm mit zwei Zeilen und einer Spalte an.

Wenn Sie diese beiden Diagramme zeichnen, werden sie wie im folgenden Beispiel übereinander erstellt.

import matplotlib.pyplot as plt
import numpy as np

#plot 1:
x = np.array([2, 4, 6, 8])
y = np.array([3, 6, 9, 12])

plt.subplot(2, 1, 1)
plt.plot(x,y)

#plot 2:
x = np.array([3, 6, 9, 12])
y = np.array([1, 2, 3, 4])

plt.subplot(2, 1, 2)
plt.plot(x,y)

plt.show()

Die Ausgabe des obigen Beispiels sieht wie das Bild unten aus.

Verwenden von Subplot, um zwei Plots übereinander zu erstellen

Anhand eines anderen Beispiels verwenden wir die Subplot-Funktion, um zwei Zahlen mit einer Zeile und zwei Spalten zu zeichnen. Dadurch werden die Diagramme nebeneinander angezeigt.

import matplotlib.pyplot as plt
import numpy as np

#plot 1:
x = np.array([2, 4, 6, 8])
y = np.array([3, 6, 9, 12])

plt.subplot(1, 2, 1)
plt.plot(x,y)

#plot 2:
x = np.array([3, 6, 9, 12])
y = np.array([1, 2, 3, 4])

plt.subplot(1, 2, 2)
plt.plot(x,y)

plt.show()

Das obige Beispiel zeigt das folgende Ergebnis.

Nebenhandlung2

Das war interessant interaktiv, findest du nicht?😃

Final Words

Matplotlib ist eine bekanntermaßen verwendete Visualisierungsbibliothek in Python. Seine Interaktivität und die Fähigkeit zur einfachen Verwendung selbst für Anfänger machen es zu einem noch besseren Werkzeug zum Zeichnen in Python.

Dieser Artikel behandelte Beispiele für die verschiedenen Diagramme, die mit Matplotlib gelieferte Funktionen erstellen können, einschließlich Tortendiagramme, Balkendiagramme, Histogramme und Streudiagramme.

Natürlich hat Python mehrere andere Bibliotheken die Experten für maschinelles Lernen und Datenwissenschaftler verwenden können, um Visualisierungen zu erstellen.

Sie können weitere Diagramme erkunden, die Sie mit Matplotlib erstellen können, und welche Funktionen Sie zum Erstellen des Diagramms verwenden werden.

Viel Spaß beim Plotten!📉📊

Danke an unsere Sponsoren
Weitere großartige Lektüre zum Thema Entwicklung
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder