Cores nos gráficos do R

Muitas vezes queremos demonstrar mais de um objeto em um gráfico e, para isso, recorremos à cores diferentes. Quando são poucos elementos fica fácil escolher as cores, geralmente ficamos com 'black', 'red', 'green' e 'blue'. Mas e quando queremos mais cores, ou até mesmo, sair da mesmice? O R, geralmente, permite dois tipos de entrada de cor: RGB em hexadecimal e através do nome das cores.



Ao total, o R possui 657 cores pré-definidas (isso é, com algum nome) que podem ser vistas através do comando colours(). Para facilitar na decisão da cor, fiz a função abaixo que nos auxiliar na hora de escolher quais cores iremos usar. Após colar a função no R, basta chamar ela (cores()), clicar nas cores desejadas e, ao fim, fechar a janela (se não fechar ou apertar 'Esc', o console permanecerá bloqueado). Os nomes das cores clicadas apareceram no console.

Input manual de dados no R

Vamos utilizar um editor, como a vizualização de folha de dados do excel para inputar nossos dados ao R.

dados <- data.frame(Idade=numeric(0), Sexo=character(0), Peso=numeric(0))
dados <- edit(dados)



Após entrar com todos os dados que necessitar, podemos simplesmente fechar o editor e teremos um data.frame salvo na variável dados =)

Depois de fechar o editor podemos chamar a variável dados e vamos obter o seguinte resultado.

Bom essa é a dica, bem simples e rápida.

Ordenando o gráfico de barras no ggplot

Anteriormente já abordamos dois posts sobre o ggplot: o primeiro deles falava sobre a personalização das escalas dos eixos e outro sobre como fazer gráficos múltiplos no ggplot. Hoje vamos continuar abordando o tema e o post será sobre a ordenação do gráfico de barras. Naturalmente a ordem das barras é controlada através de fatores, que são uma estrutura de dados utilizada para representar categorias - que é diferente do caractere.

Sobre a ordenação das barras existem algumas boas práticas a serem seguidas. As barras devem ser ordenadas de ordem alfabética, por valor ou seguindo alguma sequência, de forma a manter algum significado e não deixar o leitor perdido. Mas como devemos fazer para ordenar as barras de forma crescente? O exemplo a seguir faz um gráfico de barras ordenado para a variável cyl, do conjunto de dados mtcars.

library(ggplot2)
mtcars$cyl = factor(mtcars$cyl, levels=names(sort(table(mtcars$cyl), decreasing=TRUE)))

g = ggplot(mtcars, aes(x=cyl))
g + geom_bar()

O código é bem simples, e o que ele faz é calcular a frequência de cada categoria, ordenar e na hora de transformar em fator, forçar a ordem da ordenação das frequências. Esta receita é rápida e simples, e o resultado analítico é interessante, uma vez que a forma padrão do ggplot ordenar as barras é pela ordem alfabética. O resultado segue abaixo.