【发布时间】:2018-09-21 05:22:26
【问题描述】:
由于这被标记为重复,所以让我澄清一下我的问题是 不是,我收到了一个 Uncaught TypeError: d3.schemeCategory20 错误,例如 post that is suggested事实上,如果您查看我的代码并且我正在以与接受的答案相同的方式拨打电话。
如果阅读我的问题,我的图表是填充颜色全是黑色,MY ISSUE 是 d3.schemeCategory20c 数组似乎根本没有被调用。我没有错误我的方法有意外的输出。
我正在阅读 Barrett Clark 的数据可视化工具包一书,第一章。我已经更新了代码以反映 d3 v4 中的变化,但我的饼图用一种颜色呈现,这是我的 scaleOrdinal 分配
var color = d3.scaleOrdinal(d3.schemeCategory20c);
这是 json 调用:
$.getJSON('/residential/data', function(data) {
totals = data.totals;
var g = svg.selectAll('.arc').data(pie(d3.keys(totals))).enter()
.append('g').attr('class', 'arc');
g.append('path').attr('d', arc).style('fill', function(d) { return color(d.data); });
g.append('text').attr('transform',
function(d) { return 'translate('+ arc.centroid(d) +')'; }).attr('dy', '.35em')
.style('text-anchor', 'middle').text(function(d) { return d.data; });
});
这会呈现一个很棒的饼图,每个切片都用黑色填充,我尝试阅读文档但似乎找不到这个实现。我从其他 tuts 中挑选出这应该有效,但它没有。
【问题讨论】:
-
根本不是重复的,如果您查看我的
color分配,我将d3.schemeCategory20c作为d3.scaleOrdinal中的参数传递,与您链接到的accepted answer 相同。我没有收到 Uncaught TypeError,我的问题是饼图的颜色都是黑色的,没有使用d3.schemeCategory20c的颜色。
标签: javascript jquery d3.js