O que é uma parcela de girassol?

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

[ad_1]

UMA lote de girassol é um tipo de gráfico de dispersão que tenta reduzir o overplotting. Quando há vários pontos que têm o mesmo (x, y) valores, os gráficos de girassol representam apenas um ponto ali, mas tem pequenas arestas (ou “pétalas”) saindo do ponto para indicar quantos pontos realmente existem.

É melhor ver isso por meio de um exemplo. Aqui está um enredo de carb vs. gear de mtcars conjunto de dados:

plot(mtcars$gear, mtcars$carb,
     main = "Plot of carb vs. gear")

Do gráfico, parece que existem apenas 11 pontos de dados. No entanto, se verificarmos a guia Ambientes no RStudio, vemos que na verdade existem 32 observações no conjunto de dados: é que algumas das observações têm o mesmo (gear, carb) valores.

Vamos ver como um lote de girassol lida com esse overplotting. Acontece que a base R vem com um sunflower função plot que faz exatamente isso:

sunflowerplot(mtcars$gear, mtcars$carb,
              main = "Plot of carb vs. gear")

Isso nos diz, por exemplo, que existem 3 observações com (gear, carb) = (3, 1).

Podemos mudar a cor das “pétalas”, especificando seg.col:

sunflowerplot(mtcars$gear, mtcars$carb,
              seg.col = "blue",
              main = "Plot of carb vs. gear")

Por padrão, a primeira pétala sempre aponta para cima. Para ter o primeiro ponto da pétala em direções aleatórias, especifique rotate = TRUE:

set.seed(1)
sunflowerplot(mtcars$gear, mtcars$carb,
              rotate = TRUE,
              main = "Plot of carb vs. gear")

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

Quando dado (x, y) valores, sunflowerplot conta o número de vezes cada (x, y) valor aparece para determinar o número de pétalas que ele precisa desenhar. É possível substituir esse comportamento passando um number argumento, como mostra o próximo snippet de código:

set.seed(1)
sunflowerplot(1:10, 1:10, number = 1:10,
              main = "n observations at (n, n)")

Parcelas de girassol não são a única maneira de reduzir o overplotting. Outra técnica comum é tremendo, onde ruído aleatório é adicionado a cada ponto. O código abaixo mostra como você pode fazer isso na base R. Obviamente, uma desvantagem disso é que os pontos não são plotados no local exato dos dados.

set.seed(1)
plot(jitter(mtcars$gear), jitter(mtcars$carb),
     main = "Plot of carb vs. gear")

Parcelas de girassol não resolverão todos os seus problemas de overplotting. Aqui está um exemplo (no diamonds conjunto de dados), onde faz um trabalho horrível:

library(ggplot2)
data(diamonds)
sunflowerplot(diamonds$carat, diamonds$price,
              main = "Plot of price vs. carat")

Uma solução melhor aqui seria mudar a transparência dos pontos. O snippet de código abaixo mostra como isso pode ser feito na base R:

plot(diamonds$carat, diamonds$price,
     col = rgb(0, 0, 0, alpha = 0.05),
     main = "Plot of price vs. carat")

Leia Também  Enviando pacote R para CRAN



[ad_2]

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br