【发布时间】:2017-02-19 17:30:28
【问题描述】:
我有一个名为 data.txt 的数据集,如下所示:
{class:'C 1',nums:{A:716, B:1287, C:249}}
,{class:'C 2',nums:{A:2000, B:1876, C:3009}}
,{class:'C 3',nums:{A:899, B:2333, C:418}}
我正在尝试使用 d3 v3 为这些数据制作水平条形图。我想要做的是将 A + B + C 的总和放在条形上,但是当您将鼠标悬停在它们上时,图例会显示 A、B、C 值。我希望此图表上的标签为 C 1、C 2 和 C 3。我无法读取此数据。我正在尝试
d3.text("data.text",function(d) {
return {
label: d.class,
Q1: +d.nums[1],
Q2: +d.nums[2],
Q3: +d.nums[3],
Q4: +d.nums[4],
total: Q1+Q2+Q3+Q4
};
}, function(data) {
console.log(data[0]);
});
但是,我根本无法获取要呈现的数据。 我看过这里http://learnjsdata.com/read_data.html,但这对我没有帮助。我也打算尝试按照这个条形图http://bl.ocks.org/juan-cb/faf62e91e3c70a99a306 让它看起来像我想要的那样。
任何人都可以帮助我构建此图表并读取此数据。谢谢。
【问题讨论】:
-
我也试过 d3.text("dataset.txt",function(data) { data.nums["A"] = +data.nums["A"]; data.nums[" B"] = +data.nums["B"]; data.nums["C"] = +data.nums["C"] console.log(data[0]); });这对我也不起作用
标签: javascript d3.js bar-chart