Quais são algumas alternativas para um boxplot?

20

Estou trabalhando na criação de um site, que exibe os dados do censo de um usuário selecionado Polygons e gostaria de mostrar graficamente a distribuição de vários parâmetros (um gráfico por parâmetro).

Os dados geralmente têm as seguintes propriedades:

  1. O tamanho da amostra tende a ser grande (digamos, cerca de 10.000 pontos de dados)
  2. O intervalo de valores tende a ser muito grande (por exemplo, a população mínima pode ser menor que 100 e o máximo pode ser algo como 500.000)
  3. q1 geralmente está próximo do mínimo (digamos 200), enquanto q2 e q3 estarão dentro de 10.000
  4. Não parece nada com uma distribuição normal

Eu não sou um estatístico e, portanto, minha descrição pode não ser exatamente clara.

Eu gostaria de mostrar essa distribuição em um gráfico, que será visto pelos cidadãos (o leigo, se você preferir).

Eu preferiria usar um histograma, mas isso não é possível devido à grande variedade de valores, devido aos quais fazer caixas não é realmente fácil e direto.

Pelo pouco que sei sobre estatísticas, um gráfico de caixa é o que é frequentemente usado para mostrar esse tipo de dados, mas acho que para um leigo decifrar o gráfico de caixa não é fácil.

Quais são minhas opções para mostrar esses dados de uma maneira fácil de entender?

Devdatta Tengshe
fonte
o que exatamente você está exibindo? Não está claro para mim que tipo de dados seu único ponto de dados representa.
mpiktas 31/12/10
1
Que tal um gráfico de densidade de kernel? statmethods.net/graphs/density.html
Roman Luštrik
@mpiktas: Meus dados são dados do Censo para aldeias. Meu site permitirá que o usuário selecione uma área no mapa e, em seguida, encontrará todas as aldeias nessa área. Os dados do censo de uma vila consistem em vários valores, como: população masculina, população feminina, renda familiar média etc. Espero mostrar a distribuição de dados para um valor específico (por exemplo: População Total) para todas as aldeias que caem na área selecionada pelo usuário.
Devdatta Tengshe

Respostas:

13

Um boxplot não é tão complicado. Afinal, você só precisa calcular os três quartis e os mínimos e máximos que definem o intervalo; surge uma sutileza quando queremos desenhar os bigodes e vários métodos foram propostos. Por exemplo, em um box box de Tukey, valores fora de 1,5 vezes o inter-quartil do primeiro ou terceiro quartil seriam considerados outliers e exibidos como pontos simples. Veja também Métodos para apresentação de informações estatísticas: The Box Plot para uma boa visão geral , por Kristin Potter. O R software implementa uma regra ligeiramente diferente, mas o código fonte está disponível se você quiser estudá-lo (veja o boxplot()eboxplot.stats()funções). No entanto, não é muito útil quando o interesse está em identificar valores extremos de uma distribuição muito distorcida (mas veja, Um boxplot ajustado para distribuições distorcidas , por Hubert e Vandervieren, CSDA 2008 52 (12)).

No que diz respeito à visualização online, sugiro dar uma olhada no Protovis, que é uma caixa de ferramentas js sem plug-ins para exibições interativas na Web. A página de exemplos tem muito ilustrações do que pode ser alcançado com ela, em poucas linhas.

chl
fonte
3
Eu trabalho em pesquisa biológica. Conheço alguns colegas (quer dizer, pessoas com doutorado) que não conseguem entender os boxplots. Eu não os usaria para atingir um público geral.
Nico
1
@nico Esse é um argumento justo. Mas, esse não é um motivo para não usar um resumo gráfico eficiente. Uma ilustração esquemática do que um boxplot realmente faz pode ajudar o leitor.
chl
1
depende realmente de qual é o público-alvo e qual é o objetivo do site. Explicar boxplots definitivamente ajudaria, mas ainda assim, algumas pessoas lutam muito com o conceito de distribuição.
Nico
@nico Sim, eu concordo. Embora o boxplot não seja mencionado em Um tour pelo zoológico de visualização - mas são para conjuntos de dados grandes e complexos, eu simplesmente gosto e lamento ver que ele não é muito usado em ciências experimentais. A sobreposição de dados brutos é uma maneira de ajudar o leitor a visualizar a distribuição.
chl
1
Eu sei! Eu sempre tento "converter" meus colegas em boxplots, pelo menos quando se trata de escrever trabalhos, fazer apresentações etc., mas às vezes é assim!
Nico
11

Você também pode querer dar uma olhada nos gráficos .

texto alternativo

[ Fonte ]

Implementado no pacote R por Peter Kampstra.

radek
fonte
7

Eu sugiro que você persista com histogramas. Eles são muito mais compreendidos do que as alternativas. Use uma escala de log para lidar com a grande variedade de valores. Aqui está um exemplo que eu preparei em alguns minutos no Stata: Histograma com escala de log no eixo de valor
admito que os rótulos numéricos do eixo x não eram totalmente diretos ou automáticos, mas, ao criar um site, tenho certeza de que suas habilidades de programação estão de acordo com as desafio!

uma parada
fonte
Bom ponto. Histogramas (ou gráficos de densidade com experimentos com largura de banda) são uma ótima solução aqui.
suncoolsu
Você está completamente certo de que o histograma é a maneira mais compreendida de mostrar uma distribuição. Vou tentar fazer histogramas com os dois eixos em escala logarítmica.
Devdatta Tengshe
2
Estou apenas sugerindo o uso de uma escala de log para o eixo x. Eu não acho que uma escala de log para o eixo da frequência seria uma boa idéia, pois a área sombreada de cada barra do histograma não seria proporcional ao número de observações.
onestop
5

Aqui está uma função matlab para plotar vários histogramas lado a lado em 2D como uma alternativa ao box-plot. Veja a imagem no topo. E aqui está outro

A faixa de densidade é outra alternativa ao gráfico de caixa. É uma faixa monocromática sombreada cuja escuridão em um ponto é proporcional à densidade de probabilidade da quantidade naquele ponto. Esta é uma implementação R da faixa de densidade

George Dontas
fonte
1
(+1) Esqueceu sobre isso. Pode ser útil.
chl
1
Acabei de encontrar uma versão em PDF desatualizada de Exibindo incerteza com sombreamento .
Chl
@chl: esse link não funciona
kjetil b halvorsen 11/01
4

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

mpiktas
fonte
3
Citando um amigo meu: se você deseja "esconder" algo em um papel, coloque-o no texto e não na figura. Se você quer ter certeza de que ninguém nunca o lê, coloque-o em uma mesa! ;) Apenas brincando, é claro, mas ter um site com mapas interativos para os usuários clicarem etc. tudo isso para conseguir uma mesa ... bem, isso seria decepcionante!
Nico
@nico, sim, mas às vezes as tabelas são muito mais informativas que os gráficos. Por exemplo, prefiro tabela em vez de um gráfico ruim. Nesse caso, a tabela ainda pode ser representada por gráfico, e sugeri quantis porque eles não têm problemas com outliers.
mpiktas 31/12/10
É o que estou fazendo atualmente (mostrando os deciles em um gráfico), mas depois de mostrá-lo a alguns de nosso público-alvo, recebemos feedback de que os gráficos não eram fáceis de entender.
Devdatta Tengshe
2

Se você tem como alvo a população em geral (ou seja, um público que não entende de estatística), concentre-se no colírio para os olhos e não na precisão estatística.

Esqueça os boxplots, muito menos os de violino (eu pessoalmente acho muito difícil de ler)! Se você perguntasse ao homem comum das ruas o que é um quantil, você obteria um silêncio de olhos arregalados ...

Você deve usar gráficos de barras, gráficos de bolhas, talvez alguns gráficos de pizza (brrrr). Esqueça as barras de erro (embora eu coloquei SD no texto em algum lugar onde aplicável).

Use cores, formas, linhas grossas, 3D. Você deve tornar cada gráfico único e imediatamente fácil de entender, mesmo sem ter que ler todas as legendas / eixos, etc. Faça um uso inteligente dos mapas, colorindo-os.

A informação é bonita é um recurso muito bom para obter idéias. Veja este gráfico, por exemplo: Cafeína e calorias : qualquer um pode entender, e é agradável aos olhos.

E, é claro, dê uma olhada no trabalho de Edward Tufte.

nico
fonte
Observe que eu não estava sugerindo que ele usasse plotagens de violino para suas aplicações, mas um histograma com compartimentos espaçados logaritmicamente. As plotagens de violino foram a resposta para a pergunta no título (que era bastante diferente da pergunta no próprio post).
Dikran Marsupial
3
Você provavelmente vai gostar do Many Eyes , dataviz , datavisualization.ch e Ideas2evidence , para citar alguns.
chl
2

Eu mesmo gosto de tramas de violino , pois isso dá uma idéia da forma da distribuição. No entanto, se a grande variedade de valores é o problema, talvez seja melhor plotar o log dos dados em vez dos valores brutos, que escolheriam os tamanhos das caixas para histogramas etc. Como a exibição é para leigos, não mencione logs e marque os eixos 10, 100, 1000, 10000, 100000, 1000000 etc.

Dikran Marsupial
fonte