我是 D3 新手,正在尝试使用散点图。我无法让 d3.max(data) 在设置域时正常工作!
我有以下设置随机数据集:
var data = [];
for (i=0; i < 40; i++){
data.push({"x": i/40, "y": i/8, "a": Math.floor(Math.random() * 3), "x2": Math.random()});
}
然后执行以下操作来设置我的坐标:
var x = d3.scale.linear().domain([0, 1]).range([0 + margin, w-margin]),
y = d3.scale.linear().domain([0, d3.max(data)]).range([0 + margin, h-margin]),
c = d3.scale.linear().domain([0, 3]).range(["hsl(100,50%,50%)", "rgb(350, 50%, 50%)"]).interpolate(d3.interpolateHsl);
这会将所有 40 个点放在一条水平线上。如果我将 d3.max(data) 替换为“5”,那么它就是一条对角线(尽管从左上角到右下角,我仍然在努力翻转 y 坐标)。为什么 d3.max(data) 没有按预期工作?