Je souhaite créer un graphique à barres où l'axe x est la date, par ex. 2017-08-12, et la valeur y est le nombre de lignes de données (c'est-à-dire le nombre d'enregistrements) à la même date.graphique barChart avec dimension temporelle
// get data into right format
var dateFormat = d3.time.format("%Y-%m-%d");
pageViews.forEach(function(d) {
d['timestamp'] = dateFormat.parse(d['timestamp'].slice(0,10));
d['timestamp'].setDate(1);
});
// Create Crossfilter instance
var cf = crossfilter(data);
var dateDim = cf.dimension(function(d) {return d['timestamp'];});
var numByDate = dateDim.group();
mais si je
console.log(numByDate.top(Infinity));
cela renvoie 5 éléments qui sont le premier jour de chaque mois, de sorte que le groupe que j'ai est en termes d'année mois au lieu de l'année-mois-jour , Comment puis-je résoudre ça?
J'ai regardé dans ce crossfilter.js: group data by month, mais cela n'a pas fonctionné, après avoir utilisé .all() je reçois toujours la même chose.
Et j'ai essayé ceci:
var numByDate = dateDim.group(function(d) {return d['timestamp'];});
il me retourne juste un objet vide.