Lien vers la librairie
- Librairie très complète avec beaucoup d’exemples à disposition
- Personnalisation totale possible
- Accès à des primitives
SVG
permettant toute innovation - Peu accessible directement et assez technique
Lien vers la librairie
SVG
permettant toute innovationIdée principale :
Plusieurs concepts à comprendre :
select()
) et de l’ensemble des éléments (selectAll()
) correspondant à la définition passée en paramètre (sélecteur idem que pour le CSS) :d3.select("selecteur"); d3.selectAll("selecteur");
size()
) permettant de connaître la taille de la sélectionempty()
) permettant de savoir si la sélection est videstyle()
ou html()
). Le code suivant permet de mettre le texte en rouge pour tout le corps de la pagevar corps = d3.select("body"); corps.style("color", "red");
append()
) ou au début (insert()
) d’un élément père, qui s’utilisent comme suit :selection.append("balise"); selection.insert("balise");
See the Pen d3.js : base de la librairie by FX Jollois (@fxjollois) on CodePen.
data()
sur une sélection, il est possible de lier les données passées en paramètres (ce doit être un tableau) au DOM à la sélection en question. Le code suivant affecte chaque élément du tableau à chaque élément renvoyé par le sélecteur précédentvar selection = d3.selectAll("selecteur"); selection.data(tableau);
data()
, il existe deux fonctions utiles
enter()
: pour gérer les éléments du tableau en plusexit()
: pour gérer les éléments de la sélection en plusvar selection = d3.selectAll("selecteur"); selection.data(tableau); selection.html(function(d, i) { return "position = " + i + ", valeur = " + d; })
See the Pen d3.js by FX Jollois (@fxjollois) on CodePen.
enter()
See the Pen d3.js by FX Jollois (@fxjollois) on CodePen.
exit()
See the Pen d3.js by FX Jollois (@fxjollois) on CodePen.
See the Pen d3.js by FX Jollois (@fxjollois) on CodePen.