【发布时间】:2013-09-15 13:11:18
【问题描述】:
我有一个这样的数据数组:
var data = [{"Alphabet_Type":"a"}, {"Alphabet_Type":"b"}, {"Alphabet_Type":"a"}];
我正在使用:
- dc.js
- crossfilter.js
- d3.js
我想创建一个条形图:
- 具有字母名称的 x 轴,以及
- y 轴的字母出现次数。
问题:如何在 x 轴上绘制具有序数刻度的条形图?
我的代码:
var data = [{"Alphabet_Type":"a"}, {"Alphabet_Type":"b"}, {"Alphabet_Type":"a"}];
var Filter = crossfilter(data);
var Dimension = Filter.dimension(function (d) { return d.Alphabet_Type; });
var Group = Dimension.group();
dc.barChart("#bar-chart")
.width(800)
.height(275)
.transitionDuration(0)
.margins({ top: 10, right: 50, bottom: 30, left: 40 })
.dimension(Dimension)
.group(Group)
.elasticY(false)
.elasticX(false)
.x(d3.scale.linear().domain([-1, 10]))
.y(d3.scale.linear().domain([0, 5]))
.centerBar(true)
.renderHorizontalGridLines(true)
.renderVerticalGridLines(true)
.brushOn(false);
最后,我还有一个问题是Alphabet_Type 不会有可预测的值。所以我需要通过 crossfilter.js 获取Alphabet_Type 的值并将这些值合并到域中。我该怎么做?
【问题讨论】:
标签: javascript d3.js bar-chart dc.js crossfilter