2015-04-25 10 views
5

Sto lavorando a un grafico a bolle e sto riscontrando problemi nel calcolo del raggio della bolla.C'è qualche algoritmo per mappare un elenco di numeri ad alcuni che variano di meno?

Desidero utilizzare una determinata quantità per calcolare il raggio della bolla, ma la quantità varia molto. Il minimo è 340, il massimo è 190000 ma la maggior parte dei punti è compresa tra 5000 e 30000. Questi intervalli sono troppo estremi per utilizzare direttamente la quantità come raggio.

Esiste un algoritmo per "uniformare" la curva dei dati? O qualche metodo per mappare la quantità originale a una più ragionevole?

In questo momento il mio grafico è un grafico a dispersione, perché non riesco a tradurlo in un grafico a bolle senza raggio.

+0

Se si mappano i valori su un altro intervallo, come faresti a garantire che rappresentino ancora adeguatamente le quantità? Vuoi preservare il "clustering" di valori nell'immagine di [5000, 30000]? Non sono sicuro che un grafico a bolle sarà l'opzione migliore qui; forse un grafico a dispersione con una scala di colori per la quantità sarà più appropriato? –

+0

log (valore) viene utilizzato di routine per "linearizzare" i valori estremi e ridurre l'intervallo. –

+0

Perché la gente non riconosce la magnitudine molto bene, io uso la bolla solo per rappresentare approssimativamente le quantità. Non c'è troppa precisione necessaria. Il 'colore' è già usato per rappresentare il dipartimento infomation.log (value) è abbastanza intelligente metodo:) – Jim

risposta

2

Hai considerato di utilizzare il logaritmo dei dati? Utilizzando base 10, ad esempio, i tuoi limiti diventano

| Original | Log_10 | 
|  340 | 2.5 | 
| 5,000 | 3.7 | 
| 30,000 | 4.5 | 
| 190,000 | 5.3 | 
+0

Il logaritmo è abbastanza intelligente per questo problema :) – Jim

0

Qualcos'altro si potrebbe prendere in considerazione, se non l'hai già fatto, sta prendendo le radici quadrate dei vostri dati e usare quelli come i raggi, quindi l'area di le bolle sono proporzionali ai numeri. Quindi i raggi varieranno da circa 20 a circa 500, un rapporto di circa 20: 1.