Stili lineari in Matplotlib Python

Suraj Joshi 18 luglio 2021
Stili lineari in Matplotlib Python

Questo tutorial si concentra su come possiamo usare diversi stili di linea nel grafico Matplotlib impostando il valore appropriato del parametro linestyle nel metodo matplotlib.pyplot.plot(). Abbiamo molte opzioni di linestyle disponibili.

Imposta gli stili di linea in Matplotlib Python

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()

Produzione:

Stile di linea predefinito in Matplotlib Python

Genera il grafico della funzione sinx con lo stile di linea predefinito come solido.

Per vedere le scelte disponibili per il parametro linestyle, possiamo eseguire il seguente script:

from matplotlib import lines

print(lines.lineStyles.keys())

Produzione:

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

Possiamo utilizzare uno qualsiasi dei valori di output per modificare lo stile della linea del grafico.

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()

Produzione:

Imposta lo stile di linea in Matplotlib Python

Imposta lo stile della linea nel nostro grafico su -..

La documentazione di Matplotlib Linestyle ci fornisce un dizionario che possiamo usare per avere un controllo più raffinato sugli stili di linea. Secondo la documentazione, possiamo impostare lo stile della linea con la tupla (offset, (on_off_seq)).

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()

Produzione:

Imposta lo stile di linea in Matplotlib Python usando il dizionario

Imposta il linestyle usando il dizionario linestyles_dict. Possiamo selezionare qualsiasi chiave a cui vogliamo impostare lo stile di linea e passare il valore di quella chiave per il dizionario linestyles_dict come parametro linestyle nel metodo plot().

Autore: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

Articolo correlato - Matplotlib Line