Javascript 如何提取d3.js中排名前十的数据?
我对d3.js和javascript基本上是新手,我需要根据它的印象来选择前10个活动。我该怎么做 下面是我的代码:Javascript 如何提取d3.js中排名前十的数据?,javascript,csv,d3.js,graph,Javascript,Csv,D3.js,Graph,我对d3.js和javascript基本上是新手,我需要根据它的印象来选择前10个活动。我该怎么做 下面是我的代码: var parseDate = d3.time.format("%d-%b-%y").parse; d3.csv("ctr_impressions.csv", function(error, csv_data){ var data = d3.nest() .key(function(d) {return d.Campaign;})
var parseDate = d3.time.format("%d-%b-%y").parse;
d3.csv("ctr_impressions.csv", function(error, csv_data){
var data = d3.nest()
.key(function(d) {return d.Campaign;})
.rollup(function(d){
return d3.sum(d, function(g) {
return g.Impressions;})})
.entries(csv_data);
data.forEach(function (d) {
d.Campaign = d.key;
d.Impressions = d.values;
});
var p = d3.select("body").selectAll("p")
.data(data)
.enter()
.append("p")
.text(function(d){
return " Campaign = " + d.Campaign + " Impressions = " + d.Impressions;
});
});
多谢各位。非常感谢您的帮助。对数据进行排序和切片:
var topData = data.sort(function(a, b) {
return d3.descending(+a.Impressions, +b.Impressions);
}).slice(0, 10);//top 10 here
然后将此topData
用于您的段落:
var p = d3.select("body").selectAll("p")
.data(topData)
.enter()
.append("p")
.text(function(d){
return " Campaign = " + d.Campaign + " Impressions = " + d.Impressions;
});
对数据进行排序和切片:
var topData = data.sort(function(a, b) {
return d3.descending(+a.Impressions, +b.Impressions);
}).slice(0, 10);//top 10 here
然后将此topData
用于您的段落:
var p = d3.select("body").selectAll("p")
.data(topData)
.enter()
.append("p")
.text(function(d){
return " Campaign = " + d.Campaign + " Impressions = " + d.Impressions;
});