我正在复制 d3 库中的“甜甜圈倍数”(http://bl.ocks.org/mbostock/3888852)示例,用于不同目的:显示生物样本的 RNA 测序是否通过了一些质量控制测试。
到目前为止,我有这个代码:http : //tributary.io/inlet/5293726 为它的混乱道歉。您可以从示例中看到,饼图有 22 个切片,22 个测试中的每一个切片(对于感兴趣的人,每个测序读取 2x11 测试)。我知道这不是可视化这些信息的最佳方式,我计划使用堆叠条形图或矩阵来显示这些数据,但是 1. 这可以在最初收集的布局中显示生物样本,在8x12 网格(不固定,需要调整浏览器大小)和 2. 这是我现在所拥有的,学习将颜色绑定到 d3 元素的概念可以跨图表类型使用。
我的问题是:当我绑定数据时,与该元素关联的值现在是 100,我无法再访问我为单元格的每一行创建的其他对象,即具有d.test_colors
与关联的颜色PASS
、、WARN
以及FAIL
22 项测试中的每一项。
这是我想要工作的行:
.style('fill', function (d,i) {
console.log('in style fill: d', d)
// console.log(d.reads.if_experiment);
// return d.data.test_colors[i];
return '#A6CEE3';
});
现在它只返回浅蓝色,但我希望它返回 22 之一test_colors
,因此i
for 迭代数组。
查看“甜甜圈倍数”示例,他们将颜色域绑定到值,但我不确定如何将其集成到我的设置中。