我一直坚持这个问题。当我计算x和amp;之间的距离时,我想知道是否有可能。来自不同数据集的y值我可以简单地画一条线。
这是我一直试图用来计算距离的:
//原始
distance = Math.sqrt( ( firstObject.x - secondObject.x ) * (firstObject.x - secondObject.x ) + ( firstObject.y - secondObject.y )
* ( firstObject.y - secondObject.y ) );
//试图
distance = Math.sqrt( ( nodes.x - cat.x ) * (nodes.x - cat.x ) + ( nodes.y - cat.y )
* ( nodes.y - cat.y ) );
// OR
function forline() {
var lx = node.x - cat.x
ly = node.y - cat.y
l = Math.sqrt(lx*lx + ly*ly)
}
因此,我想知道如何获得svg.diagonal source&目标是采取这种计算。我基本上希望通过已经存在的设定点动态计算线。目前它是硬编码的,这是实用的。
.source( {x: -200, y:-300} )
.target( {x: -300, y: 2} );
在这一点上,一个更实际的解决方案将有所帮助。
编辑:http://jsfiddle.net/CfUnK/1/
.source( function(d) nodes.foreach{ return {x: d.nodes.x, y:d.nodes.y}; })