2016-07-22 95 views
1

我有下面的d3图表,我需要找到7个点的x,y坐标。我尝试了一堆方法,但似乎无法弄清楚。我将使用坐标来创建我需要放在图表上的其他元素。 d3.selectAll("path")给了我需要的点的数组,但我不知道如何让这些来获得坐标。获取路径上D3点的x,y位置

http://jsbin.com/loluwirepi/1/edit?html,output

Chart

+0

可能这是有帮助的http://stackoverflow.com/questions/26172311/d3-invert-scale-function – Cyril

+0

你说的是什么观点?如果点数由圆圈表示,我只计算其中的六个......不幸的是,您的JSBin甚至不可执行!为了在路径上放置圆,您可能需要查看[*“如何返回d3.js中路径的y坐标?”](/ q/12431595)。 – altocumulus

回答

2

D3尺度变换域输入到一系列的输出。他们也可以做相反的事情。该域是您的业务内容(价格,时间,总销售额等),范围是svg元素的维度。假设你的2个秤称为xScaleyScale。如果要查找97,000和25%的x,y点,请在xScale中查找25%的反转,并在yScale中查找97,000的反转。

var xPoint = xScale.invert(0.25) 
var yPoint = yScale.invert(97000)