首页 > 解决方案 > json 数据的 D3.js 热图

问题描述

我正在学习 D3,并且正在尝试构建热图。我指的是这个:http ://bl.ocks.org/ianyfchang/8119685

我有 JSON 格式的数据

var data=[{
        “id“:”0006ki01”,
        “exp1”:0.76,
        ”exp2”:0.56,
        ”exp3”:0.005,
        ”exp4”:0.007
},
{
        “id“:”0006ki02”,
        exp1”:0.006,
        ”exp2”:0.46,
        ”exp3”:0.003,
        ”exp4”:0.008
}
.
.
.

]

在 x 轴实验和 y 轴所有基因,每个实验的值将决定细胞的颜色。

我怎样才能做到这一点?

y轴上的基因id,x轴上的实验,每个实验的值将决定每个细胞的颜色。

下面的代码绘制了热图的第一列(y 属性的数据中每个对象的索引,x 为 0)但是如何绘制我拥有的整个数据?

 var heatmap= svg.append("g") 
             .selectAll(".cell")
             .data(data)
             .enter()
             .append("rect")
             .attr("x",0)    //Here how can I get experiment index?
             .attr("y", function(d,i){ return i * cellSize;}
             .attr("width",cellSize)
             .attr("height",cellSize)
             .style("fill",function(d){ return colorScale(d.exp1)//This gets data from exp1 but how to get values for each experiment?

标签: jsond3.jsheatmap

解决方案


推荐阅读