Radial Barchart in Tableau. Come ho realizzato la mia

Come ho realizzato la mia prima Radial Barchart in Tableau

 

Le barchart sono sicuramente il primo tipo di visualizzazione che si usa quando si comincia a lavorare con Tableau. Sono grafici semplici da leggere anche per i non addetti al settore, sono estremamente facili da realizzare e hanno diversi modi per essere personalizzate. Quello per le barchart inizialmente è un vero e proprio amore, che poi si trasforma in odio. Infatti, a volte sembra che non esistano altri tipi di grafici da usare per spiegare dei dati. Forse è per questo che la maggior parte di noi rimane impressionato poi dalle Radial Barchart, ovvero delle barre ordinate lungo un sistema di coordinate polari, invece che su assi. Ecco perché oggi ho deciso di realizzarne una Radial Barchart in Tableau, seguendo passo passo il tutorial di Toan Hoang, ed è stato davvero semplice!

 

Selezionare il dataset adatto

Per cominciare ho cercato di capire che dataset usare per questa tipologia di chart. Il tutorial prendeva come esempio il classico Sample – Superstore che tutti noi conosciamo fin troppo bene, ma non mi interessava. Personalmente amo raccontare temi di attualità o di impatto sociale, e ho pensato che ultimamente non si fa che parlare di vaccini e di Covid. Dunque, perché non mostrare proprio le percentuali di vaccinati in Italia?

Per prima cosa, sono andata sul sito ufficiale del Governo Italiano, e da lì sono riuscita a risalire alla fonte dei dataset che usano per i loro grafici. Facendo un po’ di web scraping su Alteryx sono riuscita a ricavare la tabella dalla pagina https://github.com/italia/covid19-opendata-vaccini/blob/master/dati/anagrafica-vaccini-summary-latest.csv

Questo dataset si prestava particolarmente bene perché aveva una sola dimensione (la fascia di età) che avrei dovuto usare nella Radial Barchart in Tableau.

Consiglio di partire da tabelle che abbiano solo una dimensione, meglio ancora se i valori della dimensione sono massimo 5. Questo infatti rende la Barchart esteticamente più belle e meno complesse da leggere.

Il risultato finale è stata questa tabella:

Questo dataset è stato aperto in Tableau ed unito ad un file Path.csv che ho creato con solo due valori:

 

In Tableau ho poi unito i due dataset in un Inner Join creato su Join Clause 1.

Calculated Fields: le percentuali

Ho individuato subito le dimensioni che avrei usato nella mia Barchart, ovvero:

  • la fascia d’età (dalla tabella originale);
  • La misura Path (nel dataset fittizio Path) da cui ho ricavato dei Bin da 1, per poi trascinare i Bin nelle Dimensioni

Tuttavia non avevo le percentuali di vaccinati. Per calcolare ho semplicemente creato due Calculated Field per prima e con seconda dose.

Percentuale Prima Dose : ([Prima Dose]/[Totale])

Percentuale Seconda Dose : ([Seconda Dose]/[Totale])

Queste sarebbero state le due misure su cui costruire le barre della mia chart.

Da qui ho cominciato a lavorare con le due percentuali in maniera distinta, in modo da avere due Barchart distinte: una per la prima dose di vaccino ed una per la seconda.

Per rapidità illustrerò solo i passaggi per il primo grafico, ma ognuno di questi è stato ripetuto per creare il secondo.

 

INDEX, SIN, COS, RADIALS: come creare le coordinate della Radial Barchart in Tableau

Il primo passo è stato creare un indice:

 

Index 1 :  INDEX()-1

 

Questo mi sarebbe poi servito per definire il seno (X) e il coseno (Y) della mia circonferenza goniometrica. Prima di procedere con la creazione della X e della Y, ho però ricavato la somma delle percentuali delle prime dosi, ripetendo la stessa formula ma dando ai due field un nome diverso, in modo da poterli usare per ricavare la percentuale.

 

TC_Prima Dose : WINDOW_SUM(SUM([Percentuale Prima Dose]))/2

TC_Prima Dose totale : WINDOW_SUM(SUM([Percentuale Prima Dose]))/2

TC_Percentuali Prima Dose : [TC_Prima Dose]/[TC_Prima Dose totale ]

 

Nota bene: la formula con il WINDOW_SUM viene divisa per due perché i valori sono raddoppiati dopo il join con il dataset Path.csv!

 

Costruire le unità di misura e le coordinate nelle Radial Barchart in Tableau

Il passo successivo è stato quello di usare il rapporto tra il totale delle percentuali di prima dose per ogni fascia e la percentuale massima di prima dose. In questo modo ho trovato la misura degli dello step delle mie barre.

 

TC_Step Size Prima Dose : [TC_Percentuali Prima Dose]/WINDOW_MAX([TC_Percentuali Prima Dose])

L’ultima misura ricavata è stato il rank, ovvero come disporre le barre lungo l’asse delle Y. In questo caso ho scelto di mantenere un valore ascendente, partendo dal centro del nostro piano cartesiano.

TC_Rank Prima Dose : RANK_UNIQUE([TC_Prima Dose], 'asc')

 

A Questo Punto non mi è rimasto che creare le due coordinate del mio piano cartesiano.

X1 : SIN(RADIANS([Index 1]*[TC_Step Size Prima Dose]))*[TC_Rank Prima Dose]

Y1 : COS(RADIANS([Index 1]*[TC_Step Size Prima Dose]))*[TC_Rank Prima Dose]

 

Costruire la Visualizzazione: Table Calculations e Path

Una volta create tutti i Measure Values necessarie per completare la mia Radial Barchart, ero pronta a lavorare sulla visualizzazione vera e propria.

Per iniziare ho modificato il grafico, selezionando “Line” nel Mark Pane. Poi ho trascinato Fascia Anagrafica come Colour, Size e Label, mentre Path (Bin) rimaneva nel path. Ho inoltre aggiunto come label la percentuale di vaccinati con prima dose per ogni fascia di età.

Ho lasciato il sorting discendente, in maniera che la fascia con copertura più alta stesse al centro ed avesse uno spessore maggiore. Inoltre ho selezionato per la fascia anagrafica una palette di colori sullo stesso tono, in modo da ottenere un gradiente di colore più o meno scuro a seconda dell’età (12-19 il più chiaro, 80-89 il più scuro)

Ho dunque trascinato X1 in Columns e Y1 in Rows.

 

Ho poi modificato la Table Calculation per entrambe le variabili, impostando la Nested Calculation per l’Index 1 e per lo Step Size

Dopo aver formattato un po’ le label, filtrato una fascia (quella degli ultranovantenni) e giocato un po’ con i colori, la mia Radial Barchart si presentava così:

Ho poi ripetuto l’intero processo per la seconda dose, copiando non solo le table calculations, ma lo stesso Path Bin, altrimenti non sarei riuscita a ripetere lo stesso procedimento in un altro worksheet.

 

Le Radial Barchart sono davvero utili?

A mio modesto parere, le Radial Barchart sono un tipo di visualizzazione veramente bella che però presenta alcuni problemi:

  • La scelta del dataset giusto. Avere troppe dimensioni o valori da inserire renderà la visualizzazione poco chiara, come del resto può accadere anche per le barchart
  • Un’ampia dispersione dei valori per ogni dimensione. le Radial Barchart rendono meglio quando la differenza tra i valori è molto marcata, altrimenti (come nel mio caso) sarà necessario aggiungere delle label per far capire l’entità dei dati
  • Gli assi non sono modificabili. Il nostro ordine rimane o ascendente o discendente secondo l’entità dei dati, quindi è impossibile spostare una dimensione lungo l’asse Y per disporle diversamente (ed esempio, in ordine alfabetico)

 

 

articoli correlati

Nuove funzionalità PowerBI (Dec 2023)

In questo articolo vedremo alcune nuove impostazioni di formattazione per i nostri grafici a colonne e a barre, nonché per le etichette dei dati. Credo

New Button Slicer in Power BI

La nuova funzionalità aggiunta in Power BI rende il pannello dei filtri molto più dinamico e personalizzabile. Con il nuovo oggetto grafico si ha infatti

Selezioni Data Academy 2024

La prossima Data Academy by The Information Lab Italia inizierà a Febbraio 2024! Le selezioni stanno per iniziare!