Visualização de dados em R | Guia para visualização de dados em R

Conteúdo

Vamos dar uma olhada neste gráfico por um segundo.,

empresários_journey-8698540

Esta visualização (originalmente criado com o Tableau) é um ótimo exemplo de como a visualização de dados pode ajudar os tomadores de decisão. Imagine contar essas informações a um investidor por meio de uma tabela. Quanto tempo você acha que vai demorar para explicar?

Com um volume cada vez maior de dados no mundo de hoje, é impossível contar histórias sem essas visualizações. Embora existam ferramentas dedicadas como o Tableau, QlikView y d3.js, nada pode substituir as ferramentas de modelagem / estatísticas com boa capacidade de visualização. Isso ajuda muito a realizar qualquer análise exploratória de dados, bem como engenharia de função. É aqui que R oferece uma ajuda incrível.

A Programação R oferece um conjunto satisfatório de funções e bibliotecas integradas (como ggplot2, Informação do usuário, treliça) para criar visualizações e apresentar dados. Neste artigo, Eu cobri as etapas para criar visualizações comuns e avançadas na Programação R. Mas, antes de alcançá-los, vamos olhar rapidamente para o breve histórico da visualização de dados. Se você não está interessado em história, você pode prosseguir com segurança para a próxima seção.

Um breve histórico da visualização de dados:

Historicamente, a visualização de dados evoluiu graças ao trabalho de profissionais líderes. O fundador dos métodos gráficos em estatística é William Playfair. William Playfair inventou quatro tipos de gráficos: a gráfico de linha, a gráfico de barras de datos económicos, a gráfico de pizza y el gráfico circular. Joseph Priestly havia criado a inovação dos primeiros gráficos de linha do tempo, onde barras individuais foram usadas para visualizar a vida útil de uma pessoa (1765). Assim é, Cronogramas foram inventados atrás 250 anos e não pelo Facebook!

Entre as primeiras visualizações de dados mais famosas está a Marcha de Napoleão, como descrito Charles Minard. A visualização de dados inclui informações extensas sobre o efeito da temperatura na invasão de Napoleão da Rússia, juntamente com escalas de tempo. O gráfico se destaca por sua representação em duas dimensões de seis tipos de dados.: o número de tropas de Napoleão; distância; temperatura; latitude e longitude; direção da viagem; e localização em relação a datas específicas

Florence Nightangle também foi pioneira em visualização de dados. Desenhou gráficos de Coxcomb para representar o efeito da doença na mortalidade das tropas (1858). O uso de mapas em gráficos ou análise espacial foi iniciado por John Snow (¡No de Game of Thrones!). Era um mapa de mortes por um surto de cólera em Londres, 1854, em relação à localização de bombas d'água públicas e ajudou a identificar o surto em uma única bomba.

Visualização de dados em R:

Neste artigo, vamos criar as seguintes visualizações:

Visualização básica

  1. Histograma
  2. Gráfico de barras / linhas
  3. Box plot
  4. Gráfico de dispersão

Visualização avançada

  1. Mapa de calor
  2. Mapa de mosaico
  3. Exibir mapa
  4. Gráficos 3D
  5. Correlograma

Dica R: a HistData O pacote fornece uma coleção de pequenos conjuntos de dados que são interessantes e importantes na história das estatísticas e visualização de dados..

graphic-3121261

DISPLAYS BÁSICOS

Notas rápidas:

  1. Gráficos básicos em R podem ser criados facilmente. a enredo comando é o comando a considerar.
  2. Toma muchos parametros de datos del eje x, dados do eixo y, rótulos do eixo x, rótulos do eixo y, cor e título. Para criar gráficos de linha, apenas use o parâmetro, tipo = l.
  3. Se você quer um box plot, você pode usar a palavra box plot e, para gráfico de barras, use a função de gráfico de barras.

1. Histograma

O histograma é basicamente um gráfico que divide os dados em contêineres (o rupturas) e mostra a distribuição de frequência desses contêineres. Você também pode alterar as pausas e ver o efeito que a visualização de dados tem em termos de compreensibilidade.

Deixe-me lhe dar um exemplo.

Observação: Nós usamos o comando par (mfrow = c (2,5)) para ajustar vários gráficos na mesma página para maior clareza (veja o código abaixo).

Os comandos a seguir mostram isso de uma maneira melhor. No seguinte código, a diretor A opção define o título do gráfico e o coluna opción llama en la Paleta de cores de RColorBrewer para establecer los colores.

biblioteca(RColorBrewer)
dados(VADeaths)
Através dos(mfrow = c(2,3))
hist(VADeaths,pausas = 10, col = brewer.pal(3,"Set3"),principal ="Set3 3 cores")
hist(VADeaths,pausas = 3 ,col = brewer.pal(3,"Set2"),principal ="Set2 3 cores")
hist(VADeaths,pausas = 7, col = brewer.pal(3,"Set1"),principal ="Set1 3 cores")
hist(VADeaths,,pausas = 2, col = brewer.pal(8,"Set3"),principal ="Set3 8 cores")
hist(VADeaths,col = brewer.pal(8,"Grays"),principal ="Grays 8 cores")
hist(VADeaths,col = brewer.pal(8,"Verdes"),principal ="Verdes 8 cores")

 rplot-5560610

Observe que se o número de quebras for menor que o número especificado de cores, as cores vão para valores extremos como no gráfico “Estabelecer 3 8 cores”. Se o número de cortes for maior que o número de cores, as cores começam a se repetir como na primeira linha.

2. Gráfico de barras / linhas

Gráfico de linha

Abaixo está o gráfico de linhas que mostra o aumento de passageiros aéreos em um determinado período de tempo. Os gráficos de linha são comumente preferidos quando vamos analisar uma tendência que se estende por um período de tempo.. O que mais, el gráfico de líneas también es adecuado para gráficos en los que necesitamos comparar cambios relativos en cantidades a través de alguna variável (como o tempo). Abaixo está o código:

enredo(AirPassengers,tipo ="eu")  #Gráfico de linha simples

rplot01-6565176

Gráfico de barras

gráficos de barras são adequados para mostrar a comparação entre os totais acumulados de vários grupos. Gráficos empilhados são usados para gráficos de barras para várias categorias. Aqui está o código:

barplot(iris$Pétala.Comprimento) #Creating simple Bar Graph
barplot(íris$Sepal.Comprimento,col = brewer.pal(3,"Set1"))
barplot(tabela(iris$Espécies,íris$Sepal.Comprimento),col = brewer.pal(3,"Set1")) #Enredo Empilhado

rplot04-6257828

3. Box plot (incluindo a opção de agrupar)

Diagrama de caixa mostra 5 números estatisticamente significativos: o mínimo, o percentil 25, a mediana, o percentil 75 e o máximo. Portanto, é útil para visualizar a extensão dos dados e derivar inferências em conformidade. Aqui está o código básico:

boxplot(iris$Pétala.Comprimento~iris$Espécies) #Criando plot de caixa entre duas variáveis

Vamos entender o código abaixo:

No exemplo a seguir, Fez 4 gráficos em uma tela. Usando o sinal ~, Posso visualizar como é a propagação (comprimento sépala) em várias categorias (espécies). Nos últimos dois gráficos, mostrei o exemplo de paletas de cores. Uma paleta de cores é um grupo de cores usado para tornar o gráfico mais atraente e para ajudar a criar distinções visuais nos dados..

dados(íris)
Através dos(mfrow = c(2,2))
boxplot(íris$Sepal.Comprimento,col ="vermelho")
boxplot(iris $ Sepal.Length ~ iris $ Espécies,col ="vermelho")
trama de boi(iris $ Sepal.Length ~ iris $ Espécies,col = heat.colors(3))
boxplot(iris $ Sepal.Length ~ iris $ Espécies,col = topo.colors(3))

rplot03-9857722

Para obter mais informações sobre o uso de paletas de cores em R, visite aqui.

4. Gráfico de dispersão (incluindo 3D e outros recursos)

Os gráficos de dispersão ajudam a visualizar os dados facilmente e para uma inspeção de dados simples. Aquí está el código para el Diagrama de dispersão simple y multivariado:

enredo(x = íris $ Petal.Length) #Gráfico de dispersão simples
enredo(x = íris $ Petal.Length,y = iris $ Species) #Gráfico de dispersão multivariado

rplot06-9303955

Scatter Plot Matrix puede ayudar a visualizar múltiples variables entre sí.

enredo(íris,col = brewer.pal(3,"Set1"))

rplot05-6894402

Você pode estar pensando que eu não incluí gráficos de pizza na lista de gráficos básicos. Isso é intencional, Não perca. Isso ocorre porque os profissionais de visualização de dados desaprovam o uso de gráficos de pizza para representar dados.. Isso ocorre porque o olho humano não consegue visualizar distâncias circulares com a mesma precisão da distância linear.. Em poucas palavras, tudo o que pode ser colocado em um gráfico de pizza é melhor representado como um gráfico de linha. Porém, se você gosta do gráfico de pizza, EUA:

 torta(tabela(iris$Espécies))

Aqui está uma lista completa de todos os gráficos que aprendemos até agora:

lastone-7383618

Você deve ter notado que em alguns dos gráficos, seus títulos foram truncados porque coloquei muitos gráficos na mesma tela. Para mudar isso, você pode simplesmente alterar o parâmetro 'mfrow’ para o par.

Visualizações avançadas

O que é Hexbin Binning?

Podemos usar o pacote hexbin caso tenhamos vários pontos no mesmo lugar (trama demais). o agrupamento hexagonal es una forma de histograma bivariado útil para visualizar la estructura en conjuntos de datos con n grande. Aqui está o código:

>biblioteca(hexbin)
>a = hexbin(diamantes $ preço,diamantes $ quilate,xbins = 40)
>biblioteca(RColorBrewer)
>enredo(uma)

rplot08-9685596

Também podemos criar uma paleta de cores e, em seguida, usar a função de plotagem do hexbin para um melhor efeito visual. Aqui está o código:

>biblioteca(RColorBrewer)
>rf <- colorRampPalette(rev(brewer.pal(40,'Set3')))
>hexbinplot(diamantes $ preço ~ diamantes $ quilate, dados = diamantes, colramp = rf)

rplot09-2310346

Parcela de mosaico

Um gráfico de mosaico pode ser usado para traçar dados categóricos de forma muito eficaz com a área dos dados mostrando as proporções relativas.

> dados(HairEyeColor)
 > plotagem de mosaico(HairEyeColor)

rplot6-7112183

Mapa de calor

Los mapas de calor le permiten realizar análisis de datos exploratorios con dos dimensiones como eje y la tercera dimensão mostrada por la intensidad del color. Porém, você precisa converter o conjunto de dados em um formato de matriz. Aqui está o código:

> mapa de calor(as.matrix(mtcars))

Você pode usar o comando de imagem () também para este tipo de visualização, como:

> imagem(as.matrix(b[2:7]))

rplot12-8109622

Como resumir um monte de dados?

você pode usar a função tableplot do pacote de tabplot para resumir rapidamente uma grande quantidade de dados

rplot13-5471253

Exibir mapa

O mais recente em R é a visualização de dados através de bibliotecas Javascript. Folheto é uma das bibliotecas JavaScript de código aberto mais populares para mapas interativos. Se baseia em https://rstudio.github.io/leaflet/

Você pode instalá-lo diretamente do github usando:

devtools::install_github("rstudio/folheto")

rplot14-6542760

O código do mapa acima é bastante simples:

biblioteca(magrittr)
biblioteca(folheto)
m <- folheto() %>%
addTiles() %>%  # Add default OpenStreetMap map tiles
addMarkers(lng=77.2310, lat=28,6560, popup ="A deliciosa comida de chandni chowk")
m  # Imprima o mapa

Gráficos 3D

Uma das maneiras mais fáceis de impressionar alguém com recursos de R é criando um gráfico 3D em R sem escrever QUALQUER linha de código e em 3 minutos. É pedir muito?

Usamos o pacote R Commander que atua como uma interface gráfica do usuário (GUI). Estas são as etapas:

  • Basta instalar o pacote Rcmdr
  • Use a opção de plotagem 3D de dentro dos gráficos

O código a seguir não foi escrito pelo usuário, mas é gerado automaticamente.

Observação: Quando trocamos os eixos do gráfico, você deve ver os gráficos com o respectivo código como passamos os rótulos dos eixos usando o xlab, ylab, e o título do gráfico usando Principal e cor usando o parâmetro col.

>dados(íris, pacote ="conjuntos de dados")
>scatter3d(Pétala.Largura ~ Pétala.Comprimento + Sépala.Comprimento|Espécies, data = iris, fit ="linear"
>residuais = TRUE, paralelo = FALSO, bg ="Preto", axis.scales = TRUE, grade = TRUE, elipsóide = FALSO)

screenshot-from-2015-07-12-00_02_26-8081474

Você também pode fazer gráficos 3D com o pacote Lattice. Rede também pode ser usada para xyplots. Aqui está o código:

>anexar(íris)# 3d dispersãoplot por nível de fator
>nuvem(Sepal.Length~Sepal.width*Pétala.Comprimento|Espécies, principal ="3D Scatterplot por Espécies")
>xyplot(Sepal.Largura ~ Sepal.Comprimento, íris, grupos = íris$Espécies, pch= 20)

rplot16-8992675
rplot15-9787303

Correlograma (GUI)

O correlogram nos ajuda a visualizar os dados em matrizes de correlação. Aqui está o código:

> cor(íris[1:4])
 Sepal.Length Sepal.Width Petal.Length Petal.Width
 Sepal.Length    1.0000000  -0.1175698    0.8717538   0.8179411
 Sepal.Largura    -0.1175698   1.0000000   -0.4284401  -0.3661259
 Pétala.Comprimento    0.8717538  -0.4284401    1.0000000   0.9628654
 Pétala.Largura     0.8179411  -0.3661259    0.9628654   1.0000000
 > corrgrama(íris)

rplot17-4433109

Existem três pacotes principais de GUI em R. RCommander com KMggplots, Chocalho para mineração de dados e Dedutor para visualização de dados. Estes ajudam a automatizar muitas tarefas.

Notas finais

Gostei muito de escrever sobre o artigo e as várias maneiras que R faz dele o melhor software de visualização de dados do mundo.. Enquanto Python pode progredir com o seaborn e ggplot, nada supera o imenso número de pacotes em R para exibir dados estatísticos.

Neste artigo, Eu discuti várias formas de visualização cobrindo os níveis básico ao avançado de tabelas e gráficos úteis para exibir os dados usando a Programação R..

Você achou este artigo útil? Deixe-me saber suas sugestões na seção de comentários abaixo..

Se você gostou do que acabou de ler e deseja continuar seu aprendizado sobre análise, inscreva-se em nossos e-mails, Siga-nos no Twitter ou como o nosso página do Facebook.

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.