Cos'è Plotly?
Plotly è una libreria di visualizzazione interattiva disponibile per Python, JavaScript, R e altri linguaggi. Renderizza i grafici nel browser usando D3.js e WebGL, consentendo una ricca interattività anche con grandi dataset. Plotly Express (Python) fornisce un'API di alto livello per la creazione rapida di grafici, mentre plotly.graph_objects offre un controllo granulare.
- Interattivo di default - tooltip hover, zoom, pan, selezione
- Nativo del web - si renderizza magnificamente nei browser e nei notebook Jupyter
- Multipiattaforma - Python, JavaScript, R, Julia, MATLAB
- Integrazione Dash - costruisci dashboard web complete con grafici Plotly
- Opzioni di esportazione - immagini statiche (PNG, SVG, PDF) o HTML interattivo
Grafico a Barre Base con Plotly Express (Python)
Plotly Express è il modo più rapido per creare grafici Plotly in Python. Un grafico a barre richiede solo una riga di codice dopo aver importato e preparato i tuoi dati. Ecco un esempio minimale: ```python import plotly.express as px data = {'Category': ['A', 'B', 'C', 'D'], 'Values': [23, 45, 56, 78]} fig = px.bar(data, x='Category', y='Values', title='Grafico a Barre Base') fig.show() ```
- px.bar() crea barre verticali di default
- x e y definiscono la colonna delle categorie e la colonna dei valori
- fig.show() renderizza il grafico interattivo
- Funziona in notebook Jupyter, Colab, VS Code e script
- Aggiungi color='nome_colonna' per barre colorate per categoria
Grafico a Barre Orizzontale in Plotly
Inverti l'orientamento impostando orientation='h' e scambiando gli assegnamenti di x e y. I grafici a barre orizzontali funzionano meglio per nomi di categorie lunghi o quando hai molte categorie. ```python fig = px.bar(data, x='Values', y='Category', orientation='h', title='Grafico a Barre Orizzontale') fig.show() ```
Grafico a Barre Raggruppato (Clusterizzato)
Mostra serie multiple fianco a fianco usando il parametro color. Plotly raggruppa automaticamente le barre per ogni categoria. ```python import plotly.express as px df = px.data.medals_long() # Dataset di esempio fig = px.bar(df, x='nation', y='count', color='medal', barmode='group', title='Medaglie Olimpiche per Nazione') fig.show() ```
- barmode='group' posiziona le barre fianco a fianco
- Il parametro color divide i dati in serie di barre separate
- Ogni colore diventa un elemento della legenda
- L'hover mostra i dettagli della singola barra
Grafico a Barre Impilato con Plotly
Cambia barmode in 'stack' per creare grafici a barre impilate. Il comportamento predefinito quando si usa color senza specificare barmode è l'impilamento. ```python fig = px.bar(df, x='nation', y='count', color='medal', barmode='stack', title='Medaglie Olimpiche Impilate') fig.show() ```
Personalizzare i Grafici a Barre di Plotly
Plotly offre un'ampia personalizzazione attraverso i metodi update_layout() e update_traces(). Puoi modificare colori, font, assi, annotazioni e altro.
- fig.update_layout(title_font_size=24) - Regolare lo stile del titolo
- fig.update_traces(marker_color='blue') - Cambiare i colori delle barre
- fig.update_xaxes(tickangle=45) - Ruotare le etichette degli assi
- color_discrete_sequence=['#1f77b4', '#ff7f0e'] - Paletta colori personalizzata
- fig.add_annotation() - Aggiungere annotazioni di testo ovunque
Grafico a Barre Plotly in JavaScript
barChartGuides.guides.plotly-bar-chart.content.sections.6.content
Aggiungere Interattività e Animazioni
Migliora l'esperienza utente con animazioni e funzionalità interattive che Plotly abilita di default o con configurazione minima.
- Tooltip hover - Abilitati di default, personalizzali con hovertemplate
- Eventi click - Usa l'evento plotly_click in JavaScript per azioni personalizzate
- Animazione - Aggiungi il parametro animation_frame per transizioni animate
- Cursore intervallo - Aggiungi rangeslider per l'esplorazione di serie temporali
- Pulsanti/Menu a discesa - Aggiungi controlli UI con updatemenus
Quando usare Plotly vs ChartGen.ai
Plotly eccelle per gli sviluppatori che costruiscono dashboard interattive o applicazioni dati dove il controllo programmatico è essenziale. Tuttavia, per visualizzazioni rapide o quando non vuoi scrivere codice, ChartGen.ai fornisce un percorso più veloce verso grafici professionali.
- Scegli Plotly quando: Costruisci app/dashboard, hai bisogno di aggiornamenti programmatici, richiedi interattività complessa
- Scegli ChartGen.ai quando: Grafici rapidi una tantum, preferisci non codificare, hai bisogno di esportazione immediata, presentazioni per clienti
- Vantaggio di ChartGen.ai: Incolla dati, ottieni grafico in secondi - nessuna configurazione di librerie
- Vantaggio di Plotly: Controllo totale, animazioni, gestori di click personalizzati
Passo Passo: Come Creare un Grafico a Barre Plotly
Installare Plotly
Python: pip install plotly. JavaScript: includi tramite CDN o npm install plotly.js.
Importare la Libreria
Python: import plotly.express as px. JavaScript: includi il tag script o l'istruzione di import.
Preparare i tuoi Dati
Organizza i dati come DataFrame (Python) o array di oggetti (JavaScript) con colonne categoria e valore.
Creare il Grafico a Barre
Python: fig = px.bar(df, x='category', y='value'). JavaScript: Plotly.newPlot('div', data).
Personalizzare l'Aspetto
Usa update_layout(), update_traces() in Python o oggetti layout/config in JavaScript.
Visualizzare o Esportare
fig.show() per visualizzazione interattiva, fig.write_image() per esportazione statica, o fig.to_html() per incorporamento web.
Domande Frequenti
Plotly è gratuito da usare?
Come salvo un grafico a barre Plotly come immagine?
Posso usare Plotly senza codificare?
Come creo un grafico a barre impilato in Plotly?
Plotly vs Matplotlib per grafici a barre?
Qual è il modo più veloce per creare un grafico a barre se non voglio codificare?
Guide Correlate
Grafico a Barre
La guida definitiva ai grafici a barre - impara tutti i tipi, le migliori pratiche e creali gratuitamente online.
Grafico a Barre Impilate
Impara a creare e interpretare i grafici a barre impilate con la nostra guida completa e strumento online gratuito.
Grafico a Barre Raggruppate
Padroneggia i grafici a barre raggruppate per confrontare più serie di dati fianco a fianco tra le categorie.
