我有dc.js条形图, 图表的y轴计算x轴中每个元素的数量(级别) 但我不想计算每个级别的数量 我想计算GPA的平均值。
问题是char只处理一列 但想要两列
这是csv(mep,csv)中的数据:
GPA,level,gender,year
3.34,B+,F,2003
1.98,C-,M,2003
2.81,B-,M,2005
2.12,C,M,2006
这是Java脚本函数的调用:
<script>
$(function() {
d3.csv("mep.csv", function(d) {return d;}
,function(error, rows) {
grid ("#ep2014list",rows);
});
});
</script>
这是条形图代码:
<script>
function grid (selector,data) {
var ndx = crossfilter(data),
all = ndx.groupAll();
var bar_level = dc.barChart(selector + " .level");
var level = ndx.dimension(function(d) {
if (typeof d.level == "undefined") return "";
return d.level;
});
var levelGroup = level.group().reduceSum(function(d) { return 1; });
bar_level
.width(700)
.height(200)
.outerPadding(0)
.gap(1)
.margins({top: 10, right: 0, bottom: 100, left: 30})
.x(d3.scale.ordinal())
.xUnits(dc.units.ordinal)
.brushOn(false)
.elasticY(true)
.yAxisLabel("#Avg")
.dimension(level)
.group(levelGroup);
dc.renderAll();
}
</script>
<div id="ep2014list">
</br></br></br></br>
<div class="group"></div>
<div class="dc-data-count">
</div>
</div>
<div id="ep2014list">
<div class="level"></div>
<div class="dc-data-count">
</div>
</div>