ajout plotly
This commit is contained in:
parent
92f9486d21
commit
41c2ced48f
1 changed files with 82 additions and 0 deletions
82
leaflet.Rmd
82
leaflet.Rmd
|
@ -133,3 +133,85 @@ palette_arrondissement <- colorFactor(rainbow(levels(ARROND$NOM) %>% length()),
|
|||
l1 %>% addPolygons(data=ARROND, color = ~palette_arrondissement(NOM))
|
||||
```
|
||||
|
||||
# Plotly
|
||||
|
||||
## Introduction
|
||||
|
||||
Plotly est une bliblothèque de graphiques interactifs en JavaScript. Tout comme Leaflet, on peut l'utiliser via des interfaces dans plusieurs langages de programmation, dont R.
|
||||
|
||||
```{r, echo=TRUE}
|
||||
library(plotly)
|
||||
```
|
||||
|
||||
|
||||
## Données sélectionnées
|
||||
Nous utiliserons les données suivantes:
|
||||
|
||||
[Enquête sur les dépenses des ménages (EDM), dépenses des ménages, selon le mode d'occupation du logement](http://ouvert.canada.ca/data/fr/dataset/ffd02f84-1b13-479f-83a9-35f6d17296c7)
|
||||
|
||||
```{r, echo=TRUE}
|
||||
emd_2016 <- read.table("DATA/02030024-fra.csv",sep=";", header=TRUE, dec = ",", na.strings = c("..","F"), stringsAsFactors = FALSE)
|
||||
```
|
||||
|
||||
## Sélection
|
||||
|
||||
On identifie les 8 catégories avec le plus de dépenses, peu importe le mode d'occupation du logement, en excluant les sommaires.
|
||||
```{r, echo=TRUE}
|
||||
Top20Summary <- emd_2016 %>% group_by(SUMMARY) %>%
|
||||
summarise(Valeur_totale = sum(Valeur)) %>%
|
||||
arrange(Valeur_totale %>% desc) %>%
|
||||
filter(!(SUMMARY %in% list("Dépenses totales","Consommation courante totale"))) %>%
|
||||
head(8) %>%
|
||||
select(SUMMARY)
|
||||
```
|
||||
|
||||
## Aggrégation
|
||||
|
||||
On sélectionne les valeurs correspondant aux catégories identifiées précédemment, on supprime les sommaires
|
||||
```{r, echo=TRUE}
|
||||
agg_emd_2016 <- emd_2016 %>%
|
||||
merge(Top20Summary, all=FALSE) %>%
|
||||
select(Date_Ref, TENURE, SUMMARY, Valeur) %>%
|
||||
filter(!(TENURE %in% list("Toutes les classes","Propriétaire"))) %>%
|
||||
group_by(TENURE,SUMMARY) %>%
|
||||
summarise(m_valeur = mean(Valeur))
|
||||
```
|
||||
|
||||
## Préparation des données
|
||||
```{r, echo=TRUE}
|
||||
library(reshape2)
|
||||
cast_agg_emd_2016 <- agg_emd_2016 %>% dcast(SUMMARY ~ TENURE, value.var = "m_valeur")
|
||||
names_col <- names(cast_agg_emd_2016)
|
||||
names(cast_agg_emd_2016) <- c("SUMMARY","loc","pah","psh")
|
||||
top_labels <- names_col[-1]
|
||||
```
|
||||
|
||||
## Affichage du graphique
|
||||
On crée une [graphique à barres groupées](https://plot.ly/r/bar-charts/#grouped-bar-chart), qui permetta de comparer la dépense pour le même sommaire par mode d'occupation du logement.
|
||||
|
||||
```{r, echo=TRUE}
|
||||
plot_ly(data = cast_agg_emd_2016,
|
||||
y = ~loc,
|
||||
x = ~SUMMARY,
|
||||
type = 'bar',
|
||||
orientation = 'v',
|
||||
marker = list(color = 'rgba(38, 24, 74, 0.8)',
|
||||
line = list(color = 'rgb(248, 248, 249)',
|
||||
width = 1.5)),
|
||||
name=top_labels[1]) %>%
|
||||
add_trace(y = ~pah,
|
||||
marker = list(color = 'rgba(71, 58, 131, 0.8)'),
|
||||
name=top_labels[2]) %>%
|
||||
add_trace(y = ~psh,
|
||||
marker = list(color = 'rgba(71, 58, 131, 0.8)'),
|
||||
name=top_labels[3]) %>%
|
||||
layout(barmode = 'grouped',
|
||||
xaxis = list(title = "",
|
||||
tickangle = -45),
|
||||
yaxis = list(title = "Montant en $"),
|
||||
margin = list(l = 100, b = 100))
|
||||
```
|
||||
|
||||
|
||||
|
||||
# ggplot2
|
||||
|
|
Loading…
Add table
Reference in a new issue