📊 Grafici in python con Plotly

  

Plotly è una libreria che ti permette di creare grafici belli + interattivi in Python.

Interattivo significa:

  • puoi zoomare
  • puoi passare sopra i punti
  • puoi accendere/spegnere le serie
  • puoi esportare in PNG/HTML cliccando su un bottone

Non serve sapere JavaScript o altro: scrivi Python e lui fa il resto.

🔗 Ti piace Techelopment? Dai un'occhiata al sito per tutti i dettagli!

Installazione (semplice)

Da terminale:

pip install plotly

Niente altre dipendenze complicate: funziona subito.


Primi grafici: la filosofia “minimo indispensabile”

Plotly ha due modi per fare grafici:

  1. Plotly Express (px) → semplice e veloce
  2. Graph Objects (go) → più personalizzazione, ma più codice

Per ora usiamo Plotly Express, perché copre l’80% dei casi ed è facilissimo.


1. Grafico a linee (line chart)

Esempio semplice (dati dentro il codice)

import plotly.express as px

fig = px.line(x=[1, 2, 3], y=[10, 20, 15], title="Andamento semplice")
fig.show()

Cosa sta succedendo:

  • x → valori sull’asse orizzontale
  • y → valori sull’asse verticale
  • title → titolo del grafico

Plotly capisce tutto da solo.


2. Grafico a barre (bar chart)

import plotly.express as px

fig = px.bar(x=["A", "B", "C"], y=[3, 5, 2], title="Barre semplici")
fig.show()

Perfetto per confrontare categorie.


3. Grafico a punti (scatter)

import plotly.express as px

fig = px.scatter(x=[1,2,3,4], y=[10,8,12,15], title="Scatter base")
fig.show()

Puoi usarlo anche per vedere correlazioni.


4. Aggiungere colori, dimensioni, etichette (Plotly Express lo fa quasi da solo)

Plotly diventa potente quando gli dai più informazioni.

import plotly.express as px

fig = px.scatter(
    x=[1,2,3,4], 
    y=[10,8,12,15],
    color=["rosso","blu","rosso","blu"],
    size=[10,20,30,15],
    title="Scatter con colori e dimensioni"
)
fig.show()

Cosa fa color=?
Divide i punti in gruppi e li colora automaticamente.

Cosa fa size=?
Cambia la grandezza dei punti.


5. Personalizzazione rapida del grafico

Puoi cambiare titoli, etichette, dimensioni, tema, tutto con poche righe.

fig.update_layout(
    title="Titolo migliorato",
    xaxis_title="Asse X",
    yaxis_title="Asse Y",
    template="plotly_dark"
)

Il parametro template cambia lo stile del grafico.
Alcuni template utili:

  • plotly
  • plotly_dark
  • ggplot2
  • seaborn
  • simple_white

6. Usare un file CSV con Plotly

Questo è uno dei casi più comuni.

import pandas as pd
import plotly.express as px

df = pd.read_csv("dati.csv")

fig = px.line(df, x="data", y="valore")
fig.show()

Plotly Express si integra perfettamente con pandas.


7. Passare al livello successivo: Graph Objects

Se vuoi più controllo (colori esatti, linee tratteggiate, più serie, ecc.), usi go.Figure().

Esempio leggermente più avanzato:

import plotly.graph_objects as go

fig = go.Figure()

fig.add_trace(go.Scatter(
    x=[1,2,3],
    y=[5,15,10],
    mode="lines+markers",
    name="Serie 1",
    line=dict(width=3, dash="dash")
))

fig.update_layout(title="Grafico avanzato")
fig.show()

Qui puoi controllare TUTTO.


8. Salvare il grafico

Salva in HTML (mantiene l’interattività)

fig.write_html("grafico.html")

Salva in immagine (PNG, JPG, SVG)

Serve Kaleido (leggerissimo):

pip install kaleido

Poi:

fig.write_image("grafico.png")

🌈 Riepilogo

Plotly Express (px):

  • grafici veloci
  • codice semplice
  • perfetto per l’uso quotidiano

Graph Objects (go):

  • controllo totale
  • perfetto per presentazioni / layout complessi




Follow me #techelopment

Official site: www.techelopment.it
facebook: Techelopment
instagram: @techelopment
X: techelopment
Bluesky: @techelopment
telegram: @techelopment_channel
whatsapp: Techelopment
youtube: @techelopment