Quali sono alcune alternative a un diagramma a scatole?


20

Sto lavorando alla creazione di un sito Web, che mostra i dati del censimento per un utente selezionato Poligoni e vorrei mostrare graficamente la distribuzione di vari parametri (un grafico per parametro).

I dati di solito hanno le seguenti proprietà:

  1. Le dimensioni del campione tendono ad essere grandi (diciamo circa 10.000 punti dati)
  2. L'intervallo di valori tende ad essere molto ampio (ad esempio, la popolazione minima può essere inferiore a 100 e il massimo può essere qualcosa come 500.000)
  3. q1 di solito è vicino al minimo (diciamo 200) mentre q2 e q3 saranno entro 10.000
  4. Non assomiglia a una normale distribuzione

Non sono uno statistico e quindi la mia descrizione potrebbe non essere esattamente chiara.

Vorrei mostrare questa distribuzione su un grafico, che sarà visto dai cittadini (il profano, se vuoi).

Avrei preferito usare un istogramma, ma non è possibile a causa dell'ampia gamma di valori, a causa della quale fare bin non è davvero facile e diretto.

Da quel poco che so delle statistiche, un diagramma a scatole è ciò che viene spesso usato per mostrare questo tipo di dati, ma sento che per un laico decifrare la trama di Box non è facile.

Quali sono le mie opzioni per mostrare questi dati in modo facile da capire?


che cosa stai visualizzando esattamente? Per me non è chiaro quale tipo di dati rappresenti il ​​tuo punto dati.
mpiktas,

1
Che ne dici di un diagramma di densità del kernel? statmethods.net/graphs/density.html
Roman Luštrik

@mpiktas: I miei dati sono dati del censimento per i villaggi. Il mio sito Web consentirà all'utente di selezionare un'area sulla mappa, quindi troverà tutti i villaggi in quell'area. I dati del censimento per un villaggio sono costituiti da vari valori come: popolazione maschile, popolazione femminile, reddito familiare medio ecc. Per quel villaggio. Spero di mostrare la distribuzione dei dati per un valore particolare (es. Popolazione totale) per tutti i villaggi che rientrano nell'area selezionata dall'utente.
Devdatta Tengshe,

Risposte:


13

Un diagramma a scatole non è così complicato. Dopotutto, devi solo calcolare i tre quartili e il minimo e il massimo che definiscono l'intervallo; sorge una sottigliezza quando vogliamo disegnare i baffi e sono stati proposti vari metodi. Ad esempio, in una casella Tukey i valori al di fuori di 1,5 volte l'inter quartile dal primo o terzo quartile sarebbero considerati come valori anomali e visualizzati come punti semplici. Vedi anche Metodi per la presentazione di informazioni statistiche: The Box Plot per una buona panoramica , di Kristin Potter. Il software R implementa una regola leggermente diversa ma il codice sorgente è disponibile se si desidera studiarlo (vedere il boxplot()eboxplot.stats()funzioni). Tuttavia, non è molto utile quando l'interesse è nell'identificare i valori anomali da una distribuzione molto distorta (ma vedi, Un diagramma rettificato per le distribuzioni distorte , di Hubert e Vandervieren, CSDA 2008 52 (12)).

Per quanto riguarda la visualizzazione online, suggerirei di dare un'occhiata a Protovis, che è un toolbox js senza plug-in per display web interattivi. La pagina degli esempi contiene molte illustrazioni di ciò che può essere ottenuto con essa, in pochissime righe.


3
Lavoro nella ricerca biologica. Conosco alcuni colleghi (voglio dire, persone con un dottorato di ricerca) che non riescono davvero a capire i grafici a scatole. Non li userei per rivolgersi a un pubblico generale.
nico

1
@nico Questo è un punto giusto. Ma questo non è un motivo per non usare un sommario grafico efficiente. Un'illustrazione schematica di ciò che fa effettivamente un diagramma a scatole potrebbe aiutare il lettore.
chl

1
dipende davvero da quale sia il pubblico target e quale sia l'obiettivo del sito. Spiegare i grafici a scatole sarebbe sicuramente d'aiuto, ma alcune persone lottano molto con il concetto di distribuzione.
nico

@nico Sì, sono d'accordo. Sebbene boxplot non sia menzionato in A Tour attraverso lo Zoo di visualizzazione, ma questi sono per set di dati complessi e di grandi dimensioni, mi piace semplicemente e mi dispiace vedere che non è molto usato nelle scienze sperimentali. La sovrapposizione di dati grezzi è un modo per aiutare il lettore a visualizzare la distribuzione.
chl

1
Lo so! Cerco sempre di "convertire" i miei colleghi in grafici a scatole, almeno quando si tratta di scrivere documenti, fare presentazioni ecc., Ma a volte lo è!
nico,


7

Ti suggerirei di perseverare con gli istogrammi. Sono molto più ampiamente compresi rispetto alle alternative. Utilizzare una scala di registro per far fronte alla vasta gamma di valori. Ecco un esempio che ho elaborato in un paio di minuti in Stata: Istogramma con scala logaritmica sull'asse del valore
ammetto che le etichette numeriche dell'asse x non erano del tutto semplici o automatiche, ma mentre stai costruendo un sito web sono sicuro che le tue capacità di programmazione sono all'altezza sfida!


Buon punto. Gli istogrammi (o diagrammi di densità con esperimento con larghezza di banda) sono un'ottima soluzione qui.
Suncoolsu,

Hai perfettamente ragione, l'istogramma è il modo più compreso per mostrare una distribuzione. Proverò a creare istogrammi con entrambi gli assi in scala logaritmica.
Devdatta Tengshe

2
Sto solo suggerendo di usare una scala logaritmica per l'asse x. Non credo che una scala logaritmica per l'asse della frequenza sarebbe una buona idea, in quanto l'area ombreggiata di ciascuna barra dell'istogramma non sarebbe proporzionale al numero di osservazioni.
onestop,

5

Ecco una funzione matlab per tracciare più istogrammi fianco a fianco in 2D in alternativa al diagramma a riquadri. Vedi l'immagine in alto. Ed eccone un altro

La striscia di densità è un'altra alternativa al diagramma a scatole. È una striscia monocromatica ombreggiata la cui oscurità in un punto è proporzionale alla densità di probabilità della quantità in quel punto. Questa è un'implementazione R della striscia di densità


1
(+1) Dimenticato. Potrebbe essere utile.
chl

1
Ho appena trovato una versione PDF non controllata di Visualizzazione dell'incertezza con ombreggiatura .
chl

@chl: quel link non funziona
kjetil b halvorsen l'

4

X%X=0,10,20,...,100


3
Citare un mio amico: se vuoi "nascondere" qualcosa in un foglio, inseriscilo nel testo piuttosto che in una figura. Se vuoi assicurarti che nessuno lo legga mai, mettilo in un tavolo! ;) Sto scherzando ovviamente, ma avere un sito Web con mappe interattive per gli utenti su cui fare clic ecc. Tutto ciò per ottenere un tavolo ... beh, sarebbe deludente!
nico,

@nico, sì, ma a volte le tabelle sono molto più informative dei grafici. Preferisco ad esempio una tabella anziché un grafico errato. In questo caso la tabella può ancora essere rappresentata dal grafico e ho suggerito i quantili perché non hanno problemi con i valori anomali.
mpiktas,

Questo è quello che sto facendo attualmente (mostrando i decili su un grafico), ma dopo averlo mostrato ad alcuni dei nostri destinatari, abbiamo ricevuto un feedback, che i grafici non erano facili da capire.
Devdatta Tengshe,

2

Se stai prendendo di mira la popolazione generale (cioè un pubblico non esperto di statistica), dovresti concentrarti sull'accuratezza degli occhi piuttosto che sull'accuratezza statistica.

Dimentica i grafici a scatole, figuriamoci i grafici di violini (li trovo molto difficili da leggere)! Se chiedessi all'uomo di strada medio che cos'è un quantile, otterresti soprattutto un silenzio a occhi spalancati ...

Dovresti usare grafici a barre, grafici a bolle, forse alcuni grafici a torta (brrrr). Dimentica le barre di errore (anche se metterei SD nel testo da qualche parte dove applicabile).

Usa colori, forme, linee spesse, 3D. Dovresti rendere ogni grafico unico e immediatamente facile da capire, anche senza dover leggere tutte le legende / assi ecc. Fai un uso intelligente delle mappe colorandole.

L'informazione è bella è un'ottima risorsa per ottenere idee. Guarda questo grafico per esempio: caffeina e calorie : chiunque può capirlo ed è piacevole per gli occhi.

E, naturalmente, dai un'occhiata al lavoro di Edward Tufte.


Nota che non stavo suggerendo di usare trame di violino per le sue applicazioni, ma un istogramma con bidoni spaziati logaritmicamente. Le trame di violino erano la risposta alla domanda nel titolo (che era piuttosto diversa dalla domanda nel post stesso).
Dikran Marsupial,

3
Probabilmente ti piacerà Many Eyes , dataviz , datavisualization.ch e Ideas2evidence , solo per citarne alcuni.
chl

2

Mi piacciono le trame di violino , in quanto ciò dà un'idea della forma della distribuzione. Tuttavia, se la vasta gamma di valori è il problema, forse sarebbe meglio tracciare il registro dei dati anziché i valori non elaborati, quindi sceglierebbe le dimensioni della scatola per gli istogrammi ecc. Dato che il display è per i laici, don menziona i log e segna gli assi 10, 100, 1000, 10000, 100000, 1000000 ecc.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.