D3力垂直反向拖动

迈克尔·贝尔

我已将“强制定向布局”的示例更改为DIV而不是SVG的示例,但垂直拖动似乎是相反的,我也不知道为什么。(可能是柠檬酒):)

http://codepen.io/michaelbell/pen/rxMVmx/

强制代码没有什么很奇怪的:

var force = d3.layout.force()
  .nodes(nodes)
  .size([width, height])
  .gravity(0)
  .charge(0)
  .on("tick", tick)
  .start();

function tick(e) {
  $div
    .each(cluster(10 * e.alpha * e.alpha))
    .each(collide(.5))
    .style('left', function(d) {
      return x(Math.max(d.radius, Math.min(width - d.radius, d.x))) + 'px';
    })
    .style('top', function(d) {
      return y(Math.max(d.radius, Math.min(height - d.radius, d.y))) + 'px';
    });
}

杰里米·拉特(Jeremy Larter)

这是因为SVG具有一个坐标系统,其正值y从页面顶部开始为零,并且增加的值是下降而不是上升。这在d3.scale.linear domainrangey予以说明。

var y =
  d3.scale.linear()
    .domain([0, height])
    .range([height, 0]);

尝试将y比例更改为与x比例相同的方向。例如:

http://codepen.io/anon/pen/NxRqVW

var y =
  d3.scale.linear()
    .domain([0, height])
    .range([0, height]);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

D3力碰撞效果在拖动时偏移

来自分类Dev

D3力向图:拖动时节点不停留在鼠标位置

来自分类Dev

在d3力布局中保持节点可拖动的同时实现平移

来自分类Dev

如何单击以添加或拖动D3?

来自分类Dev

d3拖动事件导致TypeError

来自分类Dev

为什么在力模拟中d3 voronoi多边形拖动事件未在多边形上触发?

来自分类Dev

如何垂直制作D3 Streamgraph

来自分类Dev

垂直翻转 D3 树图

来自分类Dev

通过拖动使d3 div可调整大小

来自分类Dev

为什么此D3拖动不起作用?

来自分类Dev

d3可拖动svg路径线段

来自分类Dev

D3鼠标事件-单击并拖动结束

来自分类Dev

D3在按下鼠标时触发拖动

来自分类Dev

在d3中拖动一条线

来自分类Dev

D3在按下鼠标时触发拖动

来自分类Dev

如何手动触发d3的拖动事件

来自分类Dev

使用D3制作水平可拖动图形

来自分类Dev

在d3中拖动一条线

来自分类Dev

使用d3拖动和缩放图表

来自分类Dev

Angular 2 D3拖动功能作用域问题

来自分类Dev

在拖动事件 D3 上旋转矩形

来自分类Dev

javascript - 获取可拖动箭头 D3 的角度值

来自分类Dev

带有可拖动节点的 D3 布局

来自分类Dev

d3中的反向颜色映射

来自分类Dev

d3上的多个拖动功能可强制拖动布局

来自分类Dev

向d3拖动行为添加参数后,元素不再可拖动

来自分类Dev

D3区分具有拖动行为的元素的单击和拖动

来自分类Dev

D3径向力布局

来自分类Dev

如何更新d3力元素?