我尝试重用“刷散分散矩阵”的示例:http://bl.ocks.org/mbostock/4063663
该代码似乎不能直接与另一个 csv 重用。比例似乎以某种方式硬编码左右:我通过添加第一列值的 10% 到 75% 来更改 csv,并且 xscale 不会直接更新。 要直观地了解该问题,请参阅 mbostock 要点的分支:http://bl.ocks.org/fdeheeger/7249196
我无法弄清楚在 JavaScript 代码中计算或更新比例的位置/方式。
d3 专家有什么建议吗?
最佳答案
比例是动态计算的——问题是 CSV 中的数字被解析和处理为字符串而不是数字。原始 block 中也是如此,但这并不重要,因为字符串的顺序与数字的顺序相同。
要解决此问题,您所需要做的就是将字符串解析为数字:
domainByTrait[trait] = d3.extent(data, function(d) { return +d[trait]; });
加号使一切变得不同。完整示例 here .
关于javascript - d3.js 带有刷色的散点矩阵 - 比例误差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19708380/