Come si visualizzano i dati distorti su centinaia di categorie? Ho sperimentato un nuovo modulo grafico che potrebbe aiutare con questo. Lo chiamo "bar pieni". È una sintesi di un grafico a barre ordinato e di una mappa ad albero. Ecco come appare un grafico a barre compresso con i recenti dati sulla capitalizzazione di mercato dell'S&P 500.

Le barre "primarie" blu e l'asse formano un normale grafico a barre ordinate che mostra le 12 maggiori società per capitalizzazione di mercato. Ogni barra grigia "secondaria" rappresenta una delle altre società. Alcune delle barre secondarie possono essere etichettate se lo spazio lo consente, ma il loro scopo principale è fornire un contesto per le barre primarie. L'idea è di sostenere il Focus+Contesto principio di visualizzazione dei dati.
Possiamo avere un'idea approssimativa di quante categorie secondarie ci sono, qual è la loro dimensione totale e persino come sono distribuite le dimensioni. E poiché sono sulla stessa scala delle barre primarie, possiamo persino stimare alcuni dei valori dalla lunghezza che si estendono sull'asse. In una visualizzazione dinamica, è possibile accedere alle etichette di categoria e ai valori per le categorie secondarie tramite le etichette al passaggio del mouse.
Il bordo destro non sempre risulta così uniforme, ma posizionando prima le barre secondarie più grandi da sinistra a destra, di solito funziona abbastanza bene.
Esempi
A volte i valori sono così distorti che il riempimento secondario non supera le barre primarie. Questo è il caso quando si tracciano i grafici delle economie mondiali in base al PIL nominale. Questo grafico a barre ricco evidenzia le prime sette delle 192 economie mondiali. (Non è esattamente uguale a G7 , A proposito).

La scelta di sole quattro categorie principali evidenzia il fatto che l'economia statunitense rappresenta circa un quarto del PIL nominale mondiale.

Se la somma delle categorie secondarie rientra nella stessa scala delle barre primarie, possono essere raggruppate in una barra separata come questa.

L'economia non è l'unica fonte di dati distorti. Ecco i conteggi degli effetti collaterali dai dati degli studi sui farmaci nicardipina.

La dimensione delle barre rappresenta il numero di occorrenze e il colore rappresenta la gravità media. I colori secondari sono ancora sbiaditi per mantenere a fuoco le categorie primarie, ma non è necessario che lo siano se è importante una rappresentazione cromatica più fedele.
Il set di dati che mi ha avviato su questa strada era una raccolta di nomi di cani registrati a New York City. Ecco la mia creazione che evidenzia i primi 25 di oltre 16.000 nomi.

A differenza degli altri esempi di barra compatta, le categorie secondarie sono state posizionate in ordine alfabetico e riga per riga per supportare la ricerca di un particolare nome di cane (con l'aiuto di etichette al passaggio del mouse). Lo svantaggio di questa disposizione è che il bordo destro è notevolmente meno uniforme.
Un vantaggio di avere un vero asse x (a differenza di una mappa ad albero) è la capacità di stimare la somma complessiva per l'intera popolazione. In questo caso, abbiamo 25 righe e ciascuna arriva a poco più di 4.000 sull'asse del conteggio. Possiamo stimare il numero di cani a 25 x 4.000+ = 100.000+.
L'esempio della nicardipina ha mostrato l'uso di una scala di colori continua per le barre. Con la colorazione categorica, è meno probabile che lo sbiadimento complichi l'interpretazione del colore. In questa visione dei nomi dei cani, ho usato l'arancione per i nomi che terminano con un suono "y".

Variazioni
Ho sperimentato con le variazioni e gli esempi sopra ne dimostrano molte. Quando costruiamo un grafico a barre compresso, possiamo scegliere tra le seguenti opzioni:
Quante righe? Esiste un buon default generale? Un numero tondo come 10 semplifica l'applicazione del trucco della moltiplicazione per ottenere la somma totale, ma le proporzioni potrebbero essere più importanti.
Posizionare le barre secondarie da sinistra a destra per dimensione o riga per riga in ordine alfabetico? La dimensione da sinistra a destra significa che la posizione del bordo sinistro di ciascuna barra secondaria corrisponde all'ordinamento per dimensione, indipendentemente dalla riga. Più grande è la barra, più si trova a sinistra. In un certo senso è coerente con le barre primarie ordinate per dimensione e ha il vantaggio di un bordo destro più pulito. E tenere insieme dimensioni simili può essere utile per comprendere la distribuzione. L'alfabetico riga per riga è più utile per trovare categorie particolari in una visualizzazione interattiva. Le barre secondarie sono posizionate in ordine alfabetico, da sinistra a destra entro ogni riga, iniziando dalla riga superiore.
Colorazione delle barre secondarie? Ho provato grigi casuali, colori sbiaditi e colori reali. La randomizzazione dei grigi rende superflue le linee di separazione (evitando grigi duplicati consecutivi).
Etichettatura di barre primarie? Mettendo le etichette su un asse esterno all'area del grafico si evita il vincolo di adattamento all'interno della barra. Ma l'inserimento delle etichette primarie all'interno delle barre aiuta a distinguerlo da un grafico a barre in pila ed è più efficiente in termini di spazio.
Etichettatura di barre secondarie? Inizialmente non preferivo etichette secondarie per enfatizzarle contesto ruolo, ma avere alcune etichette sembra essere di grande aiuto per i nuovi spettatori che non sono del tutto sicuri di cosa stia succedendo.
Pila separata per le barre secondarie? Uno stack "Altro" è fattibile quando i dati sono così distorti che la somma di tutti i valori secondari è sulla stessa scala delle barre primarie.
Unire tutte o alcune delle barre secondarie in una solida "altra" regione? Ciò manterrebbe la maggior parte dell'aspetto del contesto, renderebbe il bordo destro liscio e renderebbe il display meno rumoroso. Ma fornisce alcune informazioni sulla cardinalità e la distribuzione delle dimensioni secondarie.
Alternative
In che modo le barre imballate si confrontano con modi alternativi di visualizzare dati distorti con molte categorie?
- Rispetto all'a grafico a barre delle categorie principali, il grafico a barre compresso acquisisce il contesto delle categorie rimanenti. Lo svantaggio principale è che le barre secondarie ingrandiscono il grafico (o le barre primarie si restringono) e occupano spazio che potrebbe essere utilizzato per etichette o annotazioni.
- Rispetto a mappe ad albero , le barre compresse in generale hanno rappresentazioni dei dati più accurate (lunghezze delle barre su un asse rispetto alle aree senza alcun asse), ma il vantaggio maggiore è la visualizzazione delle categorie primarie, che ottengono etichette prominenti e dimensioni allineate all'asse. Tuttavia, le mappe ad albero supportano l'annidamento e il vero riempimento dello spazio (nessun bordo destro frastagliato). E piccoli valori possono essere rappresentati meglio nelle mappe ad albero, nel senso che è più facile vedere un rettangolo di 3x4 pixel che una barra di 1x12 pixel. Sebbene gli assi nelle barre impacchettate offrano precisione, occupano spazio, rendendo le mappe ad albero più efficienti in termini di spazio.
- Rispetto a bolle impaccate (come nel tabella delle bolle dei nomi dei cani originali ), le barre impacchettate hanno un posizionamento più regolare per la scansione e il vantaggio percettivo della lunghezza rispetto all'area del cerchio per rappresentare i valori dei dati. Tuttavia, come con le mappe ad albero, i valori minuscoli possono essere più facili da distinguere come bolle (un cerchio di 4 pixel di diametro rispetto a una barra di 1x12 pixel).
- Rispetto all'a grafico a dispersione unidimensionale , le barre imballate aggiungono etichette prominenti e allineate per le categorie primarie e il senso della somma cumulativa. Un grafico a dispersione ha il vantaggio di utilizzare una codifica posizionale accurata per tutti i valori e di mantenere disponibile il canale delle dimensioni per un'altra variabile; ma l'overstriking deve essere contrastato con jitter o dodging, che possono essere problematici con dati molto distorti.
- Rispetto a barre avvolte , che riorganizzano le barre in più colonne, le barre impacchettate sono più efficienti in termini di spazio, il che aiuta a supportare più categorie (1.000 anziché 100) e le barre impacchettate aggiungono un senso di area totale. Barre avvolte supportare una lettura più accurata del "secondario" valori a barre poiché le loro basi sono allineate e le barre avvolte dovrebbero avere una curva di apprendimento inferiore poiché assomigliano più a normali grafici a barre.
Svantaggi
La principale critica ai bar affollati è la somiglianza con barre impilate , il che porta a credere che le barre di ciascuna riga siano correlate tra loro. Ho reso gli spazi tra gli stack più piccoli del tipico per un grafico a barre in pila nel tentativo di ridurre quella potenziale confusione, ma non sono sicuro che possa essere eliminata. Spero che i vantaggi superino questo ostacolo.
Altri inconvenienti sono in gran parte compromessi che potrebbero essere affrontati dalle scelte nelle opzioni sopra elencate. Ad esempio, se i grigi casuali sembrano distrarre troppo, le barre secondarie possono essere colorate in qualche altro modo o unite insieme come semplificazione intenzionale.
Guida commentata
La prossima immagine non è per te; è per chi ha sfogliato il post guardando solo le immagini.

Provalo con JMP
Sebbene questo sforzo sia ancora sperimentale, ho allegato uno script JSL per creare la variazione più semplice di un grafico a barre compresso JMP . Funziona applicando prima la logica di impacchettamento ai dati, creando numeri di riga sintetici e variabili di colore. Quindi crea un normale grafico a barre in pila in Graph Builder con la colorazione e la disposizione di un grafico a barre compresso.
Cosa ne pensi?
Penso che le barre compresse possano essere utili per certi tipi di dati, ma mi rendo conto di essere troppo coinvolto per essere obiettivo. Quindi sto cercando feedback su tutti gli aspetti di questo sforzo: layout, terminologia, etichettatura, colori, ecc. E per favore fatemi sapere se avete dati che potrebbero trarre vantaggio da questo display: posso provarlo per voi usando il mio prototipo .Sono Stato twittare più esempi; se sei interessato dai un'occhiata nomi di cani per genere E conteggio dei danni al prodotto . Se vuoi provare a creare grafici a barre compressi su altre piattaforme di creazione di grafici, anche questo è fantastico.
Grazie per aver dato un'occhiata!
Aggiornamenti agosto 2017 : Oltre allo script JMP allegato, è ora disponibile un componente aggiuntivo di Excel e uno script d3.js per la creazione di grafici a barre compressi. Si possono trovare al zona github di packingbars . Il componente aggiuntivo è stato realizzato attraverso una collaborazione con l'esperto di Excel dataviz, Jon Peltier . Un poster di bar imballati è stato accettato per il IEEE VIS conferenza di ottobre. La presentazione del poster richiedeva a Video di anteprima di 25 secondi ; è allegata una versione GIF animata con didascalie anziché audio.
Bello da sentire, Mark -- grazie! E grazie per averlo provato con dati reali. Sono contento che tu abbia colto l'applicazione Pareto e l'aspetto dei dettagli su richiesta.
Se hai qualche "cose segrete" anonime che posso usare, passamele -- è sempre bene avere esempi pratici.
Ho twittato una galleria di grafici, tra l'altro.
Sfortunatamente, non puoi facilmente controllare la spaziatura delle barre in JMP 13. Ci sono alcuni trucchi se vuoi davvero ottenere l'effetto, ma per il resto lo script si avvicina solo all'aspetto delle barre piene.
Ho avuto un'interessante progressione di reazioni durante questo post 
Le mie reazioni iniziali sono state sulla falsariga di "questo non è proprio nuovo, lo abbiamo fatto... oh, aspetta, no, è diverso..." un paio di volte di seguito.
Penso che questa tecnica abbia un grande potenziale per set di dati grandi e ordinati. Mi sembra che eventuali carenze che ha siano già inerenti alle mappe ad albero e che questa tecnica migliori queste carenze.
Penso che il potenziale di confusione sia alto, inizialmente. Far capire al pubblico la differenza tra questo e una mappa ad albero, o questo e una barra in pila potrebbe essere una sfida in alcuni casi.
Ma penso che valga la pena esplorarlo, e preferirei *di gran lunga* tracciare i miei dati in questo formato piuttosto che in una mappa ad albero standard.
Bel lavoro.