首页 > 解决方案 > d3.csv 只返回一个定义的值

问题描述

在 d3.js 中读取 csv 文件时,只有第一列正确读取。如何让其他列返回定义的值?

我试过转换变量;例如:

d.value=+d.value;

我还搜索并尝试将我的代码行与前面的示例相匹配。我发现的唯一区别是其他代码示例具有多次访问某些变量的函数(即代码中存在对数据的先前引用)。

var data = d3.select(this).data()[0];

var htmlData = [
    data.id, 
    data.pd
];

div.html(htmlData.join("<br>"))
    .style('left', (d3.event.pageX + 94) + 'px')
    .style('top', (d3.event.pageY - 32) + 'px');        
}

我的代码,来自mbostock 的径向集群树状图https ://blockbuilder.org/MyAkosombo/666f1d3791b90a5111d57cfa3b93c10b

期望:当您将鼠标悬停在 id 的名称上时,我希望有一个显示 id 和值的工具提示。

标签: csvd3.js

解决方案


value属性位于名为 的属性内data。这是树生成器的默认结果。

因此,它应该是:

var htmlData = [
    data.id, 
    data.data.value
];

这是您更新的块构建器:https ://blockbuilder.org/GerardoFurtado/0ba57a020d16b5b582605e9779697417


推荐阅读