Seaborn Lineplot

Manav Narula 3 giugno 2022
Seaborn Lineplot

Seaborn è uno strumento di visualizzazione altamente efficiente disponibile in Python per creare trame straordinarie. Utilizza ed è basato sul modulo matplotlib.

Un grafico lineare è uno dei grafici più basilari di questo modulo. Viene generalmente utilizzato per tenere traccia di qualcosa rispetto al tempo. Può anche avere un’osservazione continua su un asse e un valore categoriale sull’altro.

In questo tutorial impareremo come creare un grafico lineare usando il modulo seaborn in Python.

Useremo la funzione seaborn.lineplot() per creare un grafico lineare. Il codice seguente mostra come utilizzare questa funzione e creare un semplice grafico a linee.

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame(
    {"Price 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day": [1, 2, 3, 4, 5, 6, 7, 8]}
)

s1 = sns.lineplot(x="Day", y="Price 1", data=df, color="red")

Trama della linea Seaborn 1

Possiamo usare diversi argomenti per personalizzare la trama. Ad esempio, l’argomento color può cambiare il colore della linea nel grafico.

Lo style e la hue sono molto utilizzati quando dobbiamo raggruppare variabili e mostrare la variazione rispetto alle variabili. Questo può essere utile quando vogliamo tracciare valori categoriali su un singolo grafico e ci consente di tracciare più linee su una singola figura.

Per esempio,

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame(
    {
        "Price": [7, 1, 5, 6, 3, 10, 5, 8],
        "Product": ["C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2"],
        "Day": [1, 1, 2, 2, 3, 3, 4, 4],
    }
)

s = sns.lineplot(x="Day", y="Price", data=df, hue="Product")

Trama della linea Seaborn 2

Possiamo anche avere più grafici lineari uno sopra l’altro. Questo metodo ci consente anche di tracciare più osservazioni sullo stesso grafico indipendentemente dalle categorie.

Vedi il codice qui sotto.

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame(
    {
        "Price 1": [7, 1, 5, 6, 3, 10, 5, 8],
        "Price 2": [1, 2, 8, 4, 3, 9, 5, 2],
        "Day": [1, 2, 3, 4, 5, 6, 7, 8],
    }
)

s1 = sns.lineplot(x="Day", y="Price 1", data=df, color="red")

s2 = sns.lineplot(x="Day", y="Price 2", data=df, color="blue")

plt.legend(labels=["Price1", "Price2"])

Trama della linea Seaborn 3

Quando lavoriamo con più righe, è meglio aggiungere una legenda alla trama, che può aiutare a differenziare entrambe le righe. La funzione matplotlib.pyplot.legend() nel codice sopra è usata per aggiungere esplicitamente una legenda in cui possiamo specificare anche le nostre etichette.

Autore: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn