Le #SWDChallenge de ce mois-ci consiste à créer une visualisation de donnée radiale. Il existe plusieurs façon de représenter des données de manière circulaire. J’ai donc décidé de créer un chord diagram. J’ai vu passé ce type de graphqiue dernièrement et ça a tout de suite capté mon attention, le fini est spéctaculaire lorsqu’ils sont bien réalisés.
Pour y arriver, je vais utiliser les données de Statistique Canada concernant les supperficies totales canadiennes qui reçoivent de l’eau d’irrigation en fonction des types de cultures.
OBJECTIFS
1) Créer une visualisation de données qui montre avec un chord diagram les supperficies des provinces canadiennes qui sont irriguées pour différents types de cultures.
IMPORTER
data <- readr::read_csv("38100241.csv") %>%
select(REF_DATE, GEO, `Crop type`, VALUE) %>%
filter(GEO %in% c("Quebec", "Ontario", "Manitoba", "Saskatchewan", "Alberta", "British Columbia"), !`Crop type` %in% ("All crop types")) %>%
mutate(`Crop type`=if_else(`Crop type`=="Field crops", "Champ", `Crop type`)) %>%
mutate(`Crop type`=if_else(`Crop type`=="Forage crops", "Fourrage", `Crop type`)) %>%
mutate(`Crop type`=if_else(`Crop type`=="Improved pasture", "Pâturage", `Crop type`)) %>%
mutate(`Crop type`=if_else(`Crop type`=="Vegetable", "Légume", `Crop type`)) %>%
mutate(`Crop type`=if_else(`Crop type`=="Hay", "Foin", `Crop type`)) %>%
mutate(GEO=if_else(GEO=="Quebec", "QC", GEO)) %>%
mutate(GEO=if_else(GEO=="Ontario", "ON", GEO)) %>%
mutate(GEO=if_else(GEO=="Manitoba", "MB", GEO)) %>%
mutate(GEO=if_else(GEO=="Saskatchewan", "SK", GEO)) %>%
mutate(GEO=if_else(GEO=="Alberta", "AB", GEO)) %>%
mutate(GEO=if_else(GEO=="British Columbia", "BC", GEO)) %>%
group_by(GEO,`Crop type` ) %>%
summarise(moyenne=mean(VALUE, na.rm=TRUE)) %>%
filter(moyenne>=1) %>%
mutate(moyenne=moyenne/1000)
FALSE Parsed with column specification:
FALSE cols(
FALSE REF_DATE = col_double(),
FALSE GEO = col_character(),
FALSE DGUID = col_character(),
FALSE `Crop type` = col_character(),
FALSE UOM = col_character(),
FALSE UOM_ID = col_double(),
FALSE SCALAR_FACTOR = col_character(),
FALSE SCALAR_ID = col_double(),
FALSE VECTOR = col_character(),
FALSE COORDINATE = col_double(),
FALSE VALUE = col_double(),
FALSE STATUS = col_character(),
FALSE SYMBOL = col_logical(),
FALSE TERMINATED = col_logical(),
FALSE DECIMALS = col_double()
FALSE )
VISUALISER
#Graphique
install.packages('circlize')
library(circlize)
grid.col = c(QC = "#DD7230",
AB = "#1C448E",
MB = "#EF476F",
SK = "#7AC74F",
BC = "#6F8695",
ON = "#FFE381",
Légume = "grey",
Champ = "grey",
Fourrage = "grey",
Pâturage = "grey",
Foin = "grey",
Fruit = "grey")
chordDiagram(data, order = c("QC", "AB", "MB", "SK", "BC", "ON", "Légume", "Champ", "Fourrage","Pâturage", "Foin", "Fruit"),
grid.col = grid.col)
title(main = "Superficie (ha) canadienne irriguée par province et type de culture")
Voici ce que ça donne: