如果我设置了比例,那么svg上的点数是按比例的:
d3.scale.linear().domain(xDomain).range([0, width]);
如何获取鼠标x位置的未缩放数字?
例如
xPositions = [1,7,10]
7是宽度为500的svg上的@ x = ~300
如何根据任意数据将300映射到7?
答案 0 :(得分:2)
您可以使用scale.invert
function进行逆映射:
var xScale = d3.scale.linear().domain(xDomain).range([0, width]);
var xDomainPos = [1, 7, 10];
var xRangePos = xDomainPos.map(function (d) { return xScale(d); });
var xNewDomainPos = xRangePos.map(function (d) { return xScale.invert(d); });