1

我试图让 D3JS 直方图使用序数尺度(在这种情况下,学生成绩符号(A+、A、B ... F)。

这是一个最小的工作示例:

<!DOCTYPE html>
<meta charset="utf-8">

<body>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script>
    var studentSymbols = ["F", "E", "D", "C", "C", "C", "C", "B", "B", "A", "A+"];

    var x = d3.scale.ordinal()
        .domain(["F", "E", "D", "C", "B", "A", "A+"])
        .rangeRoundBands([0, width]);

    // Generate a histogram using twenty uniformly-spaced bins.
    var myHistogram = d3.layout.histogram()
        (studentSymbols);

    console.log(myHistogram)
</script>
</body>

当上面运行时,控制台输出一个由 5 个数组组成的数组,其中 dx 和 x 字段等于 NaN。

我应该如何更正此代码?

4

1 回答 1

3

我想我可能已经想通了。我将 myHistogram 的声明更改为:

    var myHistogram = d3.layout.histogram()
        (studentSymbols.map(x));
于 2015-03-28T14:31:14.707 回答