In unserer neuen Artikelserie befassen wir uns mit dem Thema Matplotlib. Jeder Beitrag zeigt die Verwendung dieser Python Bibliothek um ein spezielles Diagramm darzustellen. Im aktuellen Beitrag beginnen wir mit dem Thema Potenzfunktionen. Zuerst sehen wir uns das Bild an, das wir anschließend zeichnen werden.
Das Bild beinhaltet mehrere Elemente, die in technischen Diagrammen grundsätzlich sinnvoll sind. Dazu gehören Achsenbeschriftungen, eine Bildüberschrift sowie eine Legende. Beginnen wir mit dem Einbinden der notwendigen Module.
1 2 3 |
# Module importieren import numpy as np import matplotlib.pyplot as plt |
Neben dem Zeichenmodul verwenden wir zusätzlich Numpy. Dieses Modul stellt Arrays im C Stil zur Verfügung. Mit diesen kann wesentlich effizienter gearbeitet werden, als mit herkömmlichen Python Listen.
Wir legen nun mit Hilfe der Funktion np.arange()
ein Array an, das Werte von 1 (inklusive) bis 10 (exklusive) enthält. Diese Werte weisen ein Intervall von 0.1 auf. Wird das Intervall zu groß gewählt, kann die gezeichnete Kurve sichtbare Ecken aufweisen. Mit plt.plot()
zeichnen wir drei Potenzfunktionen. Der erste Parameter ist das Array mit x Werten. Der zweite Parameter ist ebenfalls ein Array, welches die potenzierten Werte von x enthält. Der dritte Parameter definiert den Stil der Linie. Es stehen mehrere Stile zur Verfügung. Als letzten Parameter definieren wir den Text für die Legende. Um dabei mathematische Ausdrücke professionell darzustellen, unterstützt Matplotlib einen Teil der Beschreibungssprache TeX. Um solche Ausdrücke nicht mit zusätzlichen Escape Zeichen versehen zu müssen, empfiehlt sich die Verwendung von Raw Strings.
1 2 3 4 5 6 7 |
# Array mit x Werten erzeugen x = np.arange(1, 10, 0.1) # Drei Kurven zeichnen plt.plot(x, x**2, 'b-', label=r'$x^{2}$' ) plt.plot(x, x**2.1, 'r--', label=r'$x^{2.1}$') plt.plot(x, x**2.2, 'g:', label=r'$x^{2.2}$') |
Der Rest des Programms ist relativ einfach erklärt. Mit plt.xlabel()
und plt.ylabel()
legen wir die Beschriftung der x und y Achse fest. plt.legend()
zeichnet eine Legende unserer Kurven in der linken oberen Ecke des Bildes und plt.title()
schreibt die Bildüberschrift. Um das fertige Bild anzuzeigen ist der Befehl plt.show()
von essentieller Bedeutung.
1 2 3 4 5 6 7 8 9 10 11 12 |
# Achsenbeschriftungen zeichnen plt.xlabel('x') plt.ylabel('f(x)') # Legende zeichnen plt.legend() # Titel zeichnen plt.title('Potenzfunktionen') # Bild anzeigen plt.show() |
Das Beispiel kann mit folgendem Befehl ausgeführt werden:
python3 matplotlib_pfunktion.py
Das komplette Beispiel herunterladen: matplotlib_pfunktion.zip
Hinterlasse jetzt einen Kommentar