我有一个2D数据数组,想用D3将其可视化为热图。
从我看到的例子中(包括:https://dev59.com/TWcs5IYBdhLWcg3wWCpB#12925448 和 http://bl.ocks.org/2605010),看起来您需要将每个数据元素的行和列编码为属性。是否有一种方法可以利用数据的结构(即它是一个可通过[i][j]符号索引的二维数组)来避免冗余地编码位置信息?
如果没有,是否有一种简洁和/或高效的方法生成编码位置信息的数据结构?我的意思是除了嵌套for循环之外的其他方法:
从我看到的例子中(包括:https://dev59.com/TWcs5IYBdhLWcg3wWCpB#12925448 和 http://bl.ocks.org/2605010),看起来您需要将每个数据元素的行和列编码为属性。是否有一种方法可以利用数据的结构(即它是一个可通过[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})
}
}