Créer des points sur un D3 multiligne graphique
Je suis en train d'ajouter des points à une ligne graphique à l'aide de d3 dans cet exemple:
http://bl.ocks.org/mbostock/3884955
J'ai essayé de suivre ce post
Comment voulez-vous obtenir le maximum de points pour ressembler à cette image à partir de la documentation?
http://github.com/mbostock/d3/wiki/line.png
Le contour du cercle doit correspondre à la couleur de la ligne.
var color = d3.scale.category10();
d3.csv("data.csv", function(error, data) {
color.domain(d3.keys(data[0]).filter(function(key) { return key !== "date"; }));
data.forEach(function(d) {
d.date = parseDate(d.date);
});
var ranks = color.domain().map(function(name) {
return {
name: name,
values: data.map(function(d) {
return {date: d.date, ranking: +d[name]};
})
};
});
var rank = svg.selectAll(".rank")
.data(ranks)
.enter().append("g")
.attr("class", "rank");
rank.append("path")
.attr("class", "line")
.attr("d", function(d) { return line(d.values); })
.style("stroke", function(d) { return color(d.name); });
var point = rank.append("g")
.attr("class", "line-point");
point.selectAll('circle')
.data(function(d){ return d.values})
.enter().append('circle')
.attr("cx", function(d) { return x(d.date) })
.attr("cy", function(d) { return y(d.ranking) })
.attr("r", 3.5)
.style("fill", "white")
.style("stroke", function(d) { return color(d.name); });
Il y a un point-virgule à la fin de la ligne avant de la
Oui, c'est la valeur par défaut.
Vous n'avez pas réellement affiché le code que vous utilisez pour définir le contour de la couleur...
Bon, alors
.style()
.Oui, c'est la valeur par défaut.
Vous n'avez pas réellement affiché le code que vous utilisez pour définir le contour de la couleur...
Bon, alors
d.name
peut-être pas défini pour les cercles parce que c'est une sous-sélection (d.values
). Je crois qu'une chose facile à faire serait de mettre le nom dans tous les points de données.OriginalL'auteur rrrfusco | 2013-09-09
Vous devez vous connecter pour publier un commentaire.
Voir JSBin code
Trouvé réponse ici
OriginalL'auteur rrrfusco