Linienstile in Matplotlib Python

Dieses Tutorial konzentriert sich darauf, wie wir verschiedene Linienstile im Matplotlib-Plot verwenden können, indem wir den entsprechenden Wert des Parameters linestyle in der Methode matplotlib.pyplot.plot() setzen. Wir haben eine Menge linestyle-Optionen zur Verfügung.

Linienstile in Matplotlib Python setzen

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

x=np.linspace(0,2*math.pi,100)
y=np.sin(x)

plt.plot(x, y)
plt.xlabel("x")
plt.ylabel("sinx")
plt.title("Sinx Function")
plt.show()

Ausgabe:

Standard-Zeilenstil in Matplotlib Python

Es erzeugt den Plot der sinx-Funktion mit Standardlinienstil, der eine vollständige Linie ist.

Um die Auswahlmöglichkeiten für den Parameter linestyle zu sehen, können wir das folgende Skript ausführen:

from matplotlib import lines
print(lines.lineStyles.keys())

Ausgabe:

dict_keys(['-', '--', '-.', ':', 'None', ' ', ''])

Wir können jeden der Ausgabewerte verwenden, um den Linienstil des Plots zu ändern.

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

x=np.linspace(0,2*math.pi,100)
y=np.sin(x)

plt.plot(x,y,linestyle='-.')
plt.xlabel("x")
plt.ylabel("sinx")
plt.title("Sinx Function")
plt.show()

Ausgabe:

Linienstil in Matplotlib Python setzen

Es setzt den Linienstil in unserer Handlung auf -..

Die Dokumentation Matplotlib Linestyle stellt uns ein Dictionary zur Verfügung, mit dem wir eine verfeinerte Kontrolle über Linienstile haben. Gemäß der Dokumentation können wir den Linienstil mit dem Tupel (offset, (on_off_seq)) einstellen.

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

from collections import OrderedDict

linestyles_dict = OrderedDict(
    [('solid',               (0, ())),
     ('loosely dotted',      (0, (1, 10))),
     ('dotted',              (0, (1, 5))),
     ('densely dotted',      (0, (1, 1))),

     ('loosely dashed',      (0, (5, 10))),
     ('dashed',              (0, (5, 5))),
     ('densely dashed',      (0, (5, 1))),

     ('loosely dashdotted',  (0, (3, 10, 1, 10))),
     ('dashdotted',          (0, (3, 5, 1, 5))),
     ('densely dashdotted',  (0, (3, 1, 1, 1))),

     ('loosely dashdotdotted', (0, (3, 10, 1, 10, 1, 10))),
     ('dashdotdotted',         (0, (3, 5, 1, 5, 1, 5))),
     ('densely dashdotdotted', (0, (3, 1, 1, 1, 1, 1)))])

x=np.linspace(0,2*math.pi,100)
y=np.sin(x)

plt.plot(x,y,linestyle=linestyles_dict['loosely dashdotdotted'])
plt.xlabel("x")
plt.ylabel("sinx")
plt.title("Sinx Function")
plt.show()

Ausgabe:

Linienstil in Matplotlib Python mit Dictionary setzen

Es setzt den linestyle unter Verwendung des linestyles_dict-Dictionaries. Wir können einen beliebigen Schlüssel auswählen, auf den wir den Zeilenstil setzen wollen, und den Wert dieses Schlüssels für das linestyles_dict-Dictionary als linestyle-Parameter in der plot()-Methode übergeben.

Verwandter Artikel - Matplotlib Line

  • Plotten mehrerer Linien in Python Matplotlib