zoom.scaleExtent()在d3.js中做什么?

时间:2016-08-18 08:06:23

标签: javascript d3.js graph data-visualization

我创建了d3时间轴

//minDate and maxDates are javascript date object.
var timeScale =d3.scaleTime().domain([minDate,maxDate]).range(
                [0, width]);
var timeAxis = d3.axisBottom(timeScale);

我已将缩放交互添加到此轴

//gX is group div that has timeAxis.
gX.call(d3.zoom(timeScale).scaleExtent([0,4]).on("zoom",function(d){
    //Do something.
}))

但最初我想在日级别设置轴的缩放级别,默认以小时级别显示,所以最后我很好奇,

  1. 如何将年级和最小缩放级别之间的缩放界限限制为日级别?
  2. 数字[0,4]在缩放时的scaleExtent([0,4])中表示什么?

2 个答案:

答案 0 :(得分:1)

根据我的理解,缩放的时间因素。 4意思是:放大4倍。

答案 1 :(得分:0)

我知道这是4岁的帖子。那时没有文档吗? This似乎解释得很彻底。

[k0,k1]其中k0是允许的最小比例因子,k1是允许的最大比例因子,并返回此缩放行为。如果未指定extent,则返回当前比例范围,默认为[0,∞]。比例范围限制了放大和缩小。