Para acompanhar o roteiro dirigido, faça o download das notas de aula da Oficina de visualização de dados com R – download
## Escola Politecnica da Universidade de Sao Paulo
## Oficina de Visualizacao de Dados com R
## Autor: Andre F. M. Batista
## Disponivel em: http://andrefmb.sdf.org/cursoR/
### instalacao de bibliotecas
# install.packages('ggplot2')
# install.packages('lsr')
# install.packages('psych')
# install.packages('reshape2')
# install.packages('ggthemes')
### carrrega as bibliotecas
library("ggplot2")
### define o diretorio de trabalho
setwd("C:\\cursoR")
### verifica o diretorio de trabalho
getwd()
### carrega dataset Diamonds
data("diamonds")
### Verifica o dataset Diamonds
?diamonds
View(diamonds)
### Grafico de dispersao (slide 39)
### Scatterplot
ggplot (diamonds , aes (x= carat , y= price )) + geom_point ()
#### Grafico de barras (slide 43)
ggplot (diamonds, aes(x=clarity, fill=cut)) + geom_bar()
#### Mais atribututos a dispersao (slide 45)
ggplot (diamonds, aes(x=carat, y=price, color=clarity)) +
geom_point()
#### Dispersao com carat, price e color
ggplot (diamonds, aes(x=carat, y=price, color=color)) +
geom_point()
#### Outro exemplo
ggplot (diamonds, aes(x=carat, y = price, color=clarity, size=cut)) +
geom_point()
### Aplicando uma regressão
ggplot(diamonds, aes(x=carat, y=price)) +
geom_point() +
geom_smooth()
### metodo linear de regressao
ggplot(diamonds, aes(x=carat, y=price)) +
geom_point() +
geom_smooth(method="lm")
##### Entendendo AES e GEOM
#Toda informação que você passa dentro do comando inicial ggplot()
#é repassada para os geoms() seguintes.
#Assim, as estéticas que você mapeia dentro do comando ggplot()
#valem para todas as comadas subsequentes; por outro lado,
#as estéticas que você mapeia dentro dos geoms valem apenas
#para aquele geom especificamente.
### Exemplo:
## como temos o atributo color, haverá curvas por cores
ggplot(diamonds, aes(x=carat, y=price, color=clarity)) +
geom_point() + geom_smooth()
### agora podemos manter a cor restrita aos pontos
ggplot(diamonds, aes(x=carat, y=price)) +
geom_point(aes(color=clarity)) + geom_smooth()
###### FAZENDO TESTE COM TEMAS
library(ggthemes)
# Tema The Economist
ggplot(diamonds, aes(x=carat, y=price)) +
geom_point(aes(color=clarity)) +
geom_smooth() +
theme_economist() +
scale_color_economist()
# Tema The Wall Street Journal
ggplot(diamonds, aes(x=carat, y=price)) +
geom_point(aes(color=clarity)) +
geom_smooth() +
theme_wsj() +
scale_color_wsj()
### vendo dois graficos juntos
# install.packages('gridExtra')
# library('gridExtra')
grafico <- ggplot(diamonds, aes(x=carat, y=price)) +
geom_point(aes(color=clarity)) +
geom_smooth()
g1 <- grafico + theme_economist() + scale_color_economist()
g2 <- grafico + theme_wsj() + scale_color_wsj()
g3 <- grafico + theme_tufte()
g4 <- grafico + theme_stata() + scale_color_stata()
grid.arrange(g1, g2, g3, g4)
### Faceting (Slide 57)
ggplot (diamonds, aes(x=carat, y=price, color=cut)) +
geom_point() +
facet_wrap(~ clarity)
ggplot (diamonds, aes(x=carat, y=price, color=cut)) +
geom_point() + facet_grid(color ~ clarity)
### titulos e labels
ggplot (diamonds, aes(x=carat, y=price)) +
geom_point() +
ggtitle('My Scatter Plot')
ggplot (diamonds, aes(x=carat, y=price)) +
geom_point() +
ggtitle('My Scatter Plot') +
xlab("Weight (carats") +
ylab("Price (dollars)")
ggplot (diamonds, aes(x=carat, y=price)) +
geom_point() +
ggtitle('My Scatter Plot') +
xlab("Weight (carats") +
ylab("Price (dollars)") +
xlim(0,2) +
ylim(0, 10000)
########### HISTOGRAMAS
ggplot (diamonds, aes(x=price)) +
geom_histogram()
ggplot (diamonds, aes(x=price, fill=clarity)) +
geom_histogram()
ggplot (diamonds, aes(x=price, fill=clarity)) +
geom_histogram() + theme_stata() + scale_color_stata()
ggplot (diamonds, aes(x=price)) +
geom_histogram(binwidth=2000)
ggplot (diamonds, aes(x=price)) + geom_histogram(binwidth = 20) +
facet_wrap(~ clarity)
ggplot (diamonds, aes(x=price)) + geom_histogram(binwidth = 20) +
facet_wrap(~ clarity, scale="free_y")
ggplot (diamonds, aes(x=price, fill=cut)) + geom_histogram(binwidth = 20) +
facet_wrap(~ clarity)
### Density Curve
ggplot(diamonds, aes(x=price)) + geom_density()
ggplot(diamonds, aes(x=price, color = cut)) + geom_density()
ggplot(diamonds, aes(x=price, fill = cut)) + geom_density()
#### Boxplot
ggplot(diamonds, aes(x=color, y=price)) + geom_boxplot()
ggplot(diamonds, aes(x=color, y=price)) + geom_boxplot() + scale_y_log10()
### violinplot
ggplot(diamonds, aes(x=color, y=price)) + geom_violin() + scale_y_log10()
######## QPLOT
x=rnorm(1000)
qplot(x)
y=rnorm(1000)
qplot(x,y)
qplot(x,y) + geom_smooth()