Ola pessoal, tudo certo? No post de hoje vamos fugir um pouco dosalgoritmos e dar uma olhada em algo bastante importante para quem lida comanalise de dados e estatistica: como criar graficos complexos e bonitos, de maneirarapida e facil? A resposta: usando Linguagem R e o pacote ggplot2!Como comentado no post sobre Tetris e algoritmos geneticos, R e uma linguagem de programacao open sourcevoltada para analise estatistica e grafica, sendo hoje em dia bastante utilizadapor diversas empresas, incluindo Google, Pfizer, Merck, Bank of America, Shell, entre outras.A ideia deste post e dar uma introducao pratica a criacao de graficos em R, sem se preocupar com detalhes de arquitetura ou particularidades da linguagem. Para criar graficosem R, temos basicamente tres pacotes que ja vem instalados por default: graphics: Bastante util para criar graficos mais simples, como histogramas, box-plots, scatter plots, etc. A parte visual pode ser customizada facilmente, mas dependendo do grau de customizacao, pode ser um pouco trabalhoso. grid: Este pacote serve mais como um framework de criacao e customizacao dos graficos, permitindo um controle maior sobre o desenho de primitivas. Ao menos que voce queira criar o seu proprio framework, voce nao usara este pacote diretamente. lattice: Usa o pacote grid para implementar um sistema superior ao graphics, permitindo a criacao de graficos mais complexos. Apesar das vantagens, extender esse pacote pode ser bastante trabalhoso.Em resumo, o pacote graphics e bastante util na criacao e analise de graficos mais comuns, enquanto o pacotelattice nos ajuda com graficos mais complexos, do tipo trellis. Dependendo do grau de customizacaodesejado (tanto no modelo quanto na parte visual), podemos ter bastante trabalho ao usar estes pacotes. E ai que entra o ggplot2...O pacote ggplot2 ggplot2 foi criado justamente para resolver as limitacoes discutidas no topico anterior. Alem da parte visual muito superior (por default), ggplot2 oferece uma especie de gramatica dos graficos, com a qual podemos desenvolver cada elemento do grafico em camadas separadas, o que nos permite um controle total sobre a aparencia do grafico. Os exemplos desse post sao baseados no livro ggplot2: Elegant Graphics for Data Analysis, cujo autor e o proprio desenvolvedor do ggplot2. Apos instalar o R, instalar o ggplot2 e bem facil, basta digitar install.packages("ggplot2") e aguardar a instalacao (voce precisa estar conectado).Shine on your crazy diamond Ao trabalhar com graficos em ggplot2, podemos fornecer os dados como variaveis separadas, ou passar um data frame e especificar quais colunas serao utilizadas. A segunda opcao e a recomendada, por ser mais clara e evitar alguns problemas que podem ocorrer, principalmente quando trabalhamos com diversos pacotes ao mesmo tempo (pesquise o conceito de environment em R para saber mais). Para comecar nossa analise, temos um data frame interessante chamado diamonds, localizado no pacote ggplot2. Observe algumas linhas deste dataset: carat cut color clarity depthtable pricexyz 0.2IdealESI261.555.03263.953.982.43 0.2PremiumESI159.861.03263.893.842.31 0.3GoodJSI263.358.03354.344.352.75 De maneira simplificada: Carat: e uma unidade de massa, onde 1 carat = 0.2 gramas. Obviamente, quanto maior o 'carat', mais valioso o diamante, mantendo as demais caracteristicas constantes. Cut: quanto melhor o corte, maior a parcela de luz que sera refletida atraves