“Transformation of the symbolic into the geometric” [McCormick et al. 1987]
“… finding the artificial memory that best supports our natural means of perception.” [Bertin 1967]
“The use of computer-generated, interactive, visual representations of data to amplify cognition.” [Card, Mackinlay, & Shneiderman 1999]
g | mean_x | mean_y | sd_x | sd_y |
---|---|---|---|---|
1 | 9 | 7.500909 | 3.316625 | 2.031568 |
2 | 9 | 7.500909 | 3.316625 | 2.031657 |
3 | 9 | 7.500000 | 3.316625 | 2.030424 |
4 | 9 | 7.500909 | 3.316625 | 2.030578 |
Eléments de base du graphiques
Ce qui va varier en fonctions des données
Toutes les variables graphiques ne se valent pas.
Ce qui est intéressant n’est pas toujours ce que l’on a au départ.
1281768756138976546984506985604982826762 9809858458224509856458945098450980943585 9091030209905959595772564675050678904567 8845789809821677654876364908560912949686
1281768756138976546984506985604982826762 9809858458224509856458945098450980943585 9091030209905959595772564675050678904567 8845789809821677654876364908560912949686
manufacturer.
model.
displ. engine displacement, in litres
m_cty = mpg %>% group_by(manufacturer) %>% summarize(mcty=mean(cty))
ggplot(data=m_cty)+
geom_bar(aes(x=manufacturer,y=mcty),stat = 'identity')+
scale_x_discrete("Manufacturer")+
scale_y_continuous("Miles / Gallon (City conditions)")
m_cty_ordered = m_cty %>% arrange(desc(mcty)) %>%
mutate(manufacturer=factor(manufacturer,levels=manufacturer))
ggplot(data=m_cty_ordered)+
geom_bar(aes(x=manufacturer,y=mcty),stat = 'identity')+
scale_x_discrete("Manufacturer")+
scale_y_continuous("Miles / Gallon (City conditions)")
ggplot(data=m_cty_ordered)+
geom_bar(aes(x=manufacturer,y=mcty),stat = 'identity')+
scale_x_discrete("Manufacturer")+
scale_y_continuous("Miles / Gallon (City conditions)")+
coord_flip()
url="http://vlsstats.ifsttar.fr/data/temporalstats_Velib2018.json"
# lecture des données
data=fromJSON(file=url)
# construction d'une liste de data.frame homogènes
tempstats.list=lapply(data,function(x){
data.frame(time=x$'_id',nbbikes=x$value$total_available_bikes)})
# concatenations des data.frame ?do.call
tempstats.df=do.call(rbind,tempstats.list)
# téléchargement et remise en forme des données
url = "http://vlsstats.ifsttar.fr/data/spatiotemporalstats_Velib2018.json"
data=fromJSON(file=url)
extract = function(x){
data.frame(id=x$'_id',
time= x$download_date,
nbbikes = x$available_bikes )
}
st_tempstats.df=do.call(rbind,lapply(data,extract))
sel = st_tempstats.df %>% select(id) %>% unique() %>% sample_n(8) %>% pull()
# selection de quelques stations
st_tempstats_sub.df = st_tempstats.df %>%
filter(id %in% sel)
ggplot(data=st_tempstats_sub.df)+
geom_line(aes(x=time,y=nbbikes,group=id,color=factor(id)),size=2)+
facet_grid(id ~ .)
mpg_su = mpg %>%
filter(class %in% c('compact','suv','pickup','minivan'))
ggplot(mpg_su)+geom_point(aes(x=cty,y=hwy,color=class))
mpg_su = mpg %>%
filter(class %in% c('compact','suv','pickup','minivan'))
ggplot(mpg_su)+geom_point(aes(x=cty,y=hwy,shape=class))
\[\textrm{Lie factor} = \frac{\textrm{visual effect size}}{\textrm{data effect size}}\]
Sachant que l’aire de la tranche “apple”" (en vert) est proportionelle à \(2.22\,cm^2\) et celle correspondant à rim (en bleue) est proportionelle à \(2.96\,cm^2\) calculer le lying factor ?
\[S = I^p\]
+geom_line()
aes(x=a,y=b,...)
ggplot(mpg)+
geom_point(aes(x=cty,y=hwy,color=manufacturer,shape=factor(cyl)))
ggplot(mpg,aes(x=cty,y=hwy,color=manufacturer,shape=factor(cyl)))+
geom_jitter()
+geom_line()
aes(x=a,y=b,...)
scale_fill_brewer(palette=3,type="qual")
scale_x_continuous(limits=c(0,45),breaks=seq(0,45,2))
ggplot(mpg,aes(x=cty,y=hwy,color=manufacturer,shape=factor(cyl)))+
geom_jitter()+
scale_x_continuous(limits=c(0,45),breaks=seq(0,45,2))
+geom_line()
aes(x=a,y=b,...)
scale_fill_brewer(palette=3,type="qual")
scale_x_continuous(limits=c(0,45),breaks=seq(0,45,2))
facet_grid(. ~ cyl)
+geom_line()
aes(x=a,y=b,...)
scale_fill_brewer(palette=3,type="qual")
scale_x_continuous(limits=c(0,45),breaks=seq(0,45,2))
stat_density2d()
Reprendre les échelles, légendes de cette figures
# téléchargement et remise en forme des données
url="http://vlsstats.ifsttar.fr/data/spatiotemporalstats_Velib2018.json"
data=fromJSON(file=url)
extract = function(x){
data.frame(id=x$'_id',
time= x$download_date,
nbbikes = x$available_bikes )
}
st_tempstats.df=do.call(rbind,lapply(data,extract))
# selection de 3 stations
st_tempstats_sub.df = st_tempstats.df %>%
filter(id %in% sel)
ggplot(data=st_tempstats_sub.df)+
geom_line(aes(x=time,y=nbbikes,group=id,color=factor(id)),size=2)+
facet_grid(id ~ .)
Reprendre les échelles, légendes de cette figures
Reproduire ce graphique (Les données Iris sont déjà chargées)
Reproduire ce graphique (Les données mtcars sont déjà chargées) ! modifier le theme du graphique ?theme
Reproduire ce graphique