我有一个二维数据数组,我想在 D3 中将其可视化为热图。
从我看到的例子中,包括:
https://stackoverflow.com/a/12925448/1647819
看起来您必须将行和列编码为每个数据元素的属性。有没有办法利用数据的结构(即它是一个可使用 [i][j] 表示法索引的二维数组这一事实)来避免对位置信息进行冗余编码?
如果没有,是否有一种简洁和/或有效的方法来生成对位置信息进行编码的数据结构?我的意思不是嵌套的 for 循环:
myData = [[1, 2], [3, 4]]
myDataWithPos = []
nRow = myData.length
nCol = myData[0].length
for (i = 0; i < nRow; i++){
for(j = 0; j < nCol; j++){
myDataWithPos.push({val: myData[i][j], row: i, col: j})
}
}