我已经构建了一个使用旧的REST api的自定义D3图表,我正在寻找有关如何使D3输入适应新的API的帮助。 在http://codepen.io/anon/pen/bEgMdV我使用数据集'数据集'我试图使用'数据'哪有基因'和'数据集'在一个。
到目前为止,我已尝试更改
var gs = svg.selectAll("g")
.data(d3.values(dataset)).enter().append("g");
gs.selectAll("path").data(function(d) {
return pie(d.data);
到
var gs = svg.selectAll("g")
.data(d3.values(data.values)).enter().append("g");
gs.selectAll("path").data(function(d) {
return pie(d[0]);
为了获得数值中的数字'。 我觉得我有点接近这个。有人可以帮忙吗?
答案 0 :(得分:0)
其中一种方法是将新数据转换为旧数据结构,这样您就不需要更改代码。
此for循环会将新数据更改为预期的旧数据结构。
genes = [];
dataset = [{data:[], gene:"LPAR"}];
data.values.forEach(function(s){
genes.push(s[0]);//iterate and add the gene
dataset[0].data.push(s[1])//iterate and add the values.
});
工作代码here
希望这有帮助!