javascript - 在d3.js中添加兼容缩放和拖动的网格线

标签 javascript d3.js gridlines

我正在尝试将网格线添加到现有代码中,并且看过很多教程,但没有一个具有可缩放和可拖动的网格线。

我现有代码的精简版本在这里:

http://jsfiddle.net/p4cmx1kj/

我知道我必须有一个秤:

this.x = d3.scale.linear()
  .domain([this.options.xmin, this.options.xmax])
  .range([0, this.size.width]);

稍后再画。但我不知道怎么办。

我想要垂直网格线在缩放时“变化”(例如:从 10-20-30-40 到 10-15-20-25)并随着我的移动而移动拖动我的图表。 我怎样才能做到这一点?

最佳答案

我想你可以做类似这个例子的事情:

http://blog.scottlogic.com/2014/09/26/an-interactive-stock-comparison-chart-with-d3.html

然后添加一些限制,如果高于某个阈值,它会在轴上添加更多/更少的刻度标签。 (至少这是我现在计划在部队布局上尝试做的事情)。

或者更好的是让你的标签成为范围的函数,例如类似于 min + n*(min-max)/4 的东西,其中 n 是你的刻度标签 {1,4}。

关于javascript - 在d3.js中添加兼容缩放和拖动的网格线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30848414/

相关文章:

python - 在 3d matplotlib 图中扩展网格线

r - 如何使横坐标(即网格线 y=0)在 ggplot2 中显得更暗或更粗?

ios - Coreplot majorTickLocations 使用 View 坐标

javascript - 在 fill() 返回不正确的矩阵后设置矩阵中的值

javascript - 单击其他 div 将一个 div 移动到其他 div 旁边

javascript - D3.js > 在嵌套的 html 结构中绑定(bind)数据

javascript - donut chart 中的过渡颜色

javascript - 如何从 ionic 弹出窗口中删除不需要的空间

javascript - 是否可以在使用 jquery 将元素插入 DOM 之前对其进行操作?

javascript - 使用动态变量在 d3js 中设置圆半径