Como Traçar dados resumidos em um ggplot2 em R
Uma característica muito conveniente de ggplot2
é a sua gama de funções para resumir seus dados de P na trama. Isso significa que muitas vezes você não tem que pré-resumir seus dados. Por exemplo, a altura das barras em um histograma indica quantas observações de algo que você tem em seus dados.O resumo estatístico para isso é para contar as observações. Os estatísticos referem-se a este processo como binning, e a estatística padrão para geom_bar () é stat_bin ().
Análoga à forma que cada geom tem um status padrão associado, cada um status também tem uma geom padrão.
Então, isso levanta a questão: Como você decide se deseja usar um geom ou uma estatística? Em teoria, não importa se você escolher o geom ou stat primeiro. Na prática, no entanto, que muitas vezes é intuitivo para começar com um primeiro tipo de trama - por outras palavras, especificar um geom. Se você então querer adicionar outra camada de resumo estatístico, use um stat.
Neste enredo, que utilizou os mesmos dados para primeiro criar um gráfico de dispersão com geom_point () e, em seguida, você adicionou uma linha suave com stat_smooth ().
Dê uma olhada em alguns exemplos práticos do uso estatísticas funções.
Stat | Descrição | padrão Geom |
---|---|---|
stat_bin () | Conta o número de observações em caixas. | geom_bar () |
stat_smooth () | Cria uma linha suave. | geom_line () |
stat_sum () | Adiciona valores. | geom_point () |
stat_identity () | Não há resumo. Lotes de dados como está. | geom_point () |
stat_boxplot () | Resume os dados para um gráfico de caixa-and-suiça. | geom_boxplot () |
Como bin dados ggplot2 |
Você já viu como usar stat_bin () para resumir seus dados em caixas, porque este é o status padrão de geom_bar (). Isto significa que as duas linhas de código a seguir produzir parcelas idênticas:
> Ggplot (terremotos, aes (x = profundidade)) + geom_bar (binwidth = 50)> ggplot (terremotos, aes (x = profundidade)) + stat_bin (binwidth = 50)
Como para alisar os dados de I em ggplot2
o ggplot2 pacote também faz com que seja muito fácil criar linhas de regressão através de seus dados. Você usa o stat_smooth () função para criar este tipo de linha.
A coisa interessante sobre stat_smooth () é que ele faz uso de regressão local por padrão. R tem várias funções que podem fazer isso, mas ggplot2 utiliza o loess () função para a regressão local. Isto significa que se você quiser criar um modelo de regressão linear você tem que dizer stat_smooth () usar uma função diferente suave. Você pode fazer isso com o método argumento.
Para ilustrar o uso de um mais suave, começar por criar um conjunto disperso de desemprego na longley conjunto de dados:
> ggplot (Longley, aes (x = Ano, y = Empregado)) + geom_point ()
Em seguida, adicionar um mais suave. Isto é tão simples como adicionar stat_smooth () à sua linha de código.
> ggplot (Longley, aes (x = ano, y = Empregado)) ++ geom_point () + stat_smooth ()
Por fim, dizer stat_smooth a utilização de um modelo de regressão linear. Você pode fazer isso adicionando o argumento method = "lm".
> ggplot (Longley, aes (x = ano, y = Empregado)) ++ geom_point () + stat_smooth (método = "lm")
Como saber ggplot2 para deixar seus dados unsummarized
Às vezes você não quer ggplot2 para resumir seus dados na trama. Isso geralmente acontece quando os dados são já pré-resumidos ou quando cada linha de seu quadro de dados tem de ser plotados em separado. Nesses casos, você quer dizer ggplot2 para não fazer nada em tudo, e a estatística de fazer isso é stat_identity ().