簡體   English   中英

D3的程序化縮放

[英]Programatic zoom in D3

使用此處的代碼模式,我想以編程方式實現語義放大(放大或縮小)。 我不確定如何獲得適當的x,y和scaleExtent項,這些項會通過zoom擴展:

var svg = d3.select("body").append("svg")
    .attr("width", width)
    .attr("height", height)
  .append("g")
    .call(d3.behavior.zoom().x(x).y(y).scaleExtent([1, 8]).on("zoom", zoom));

在這里查看JSfiddle。 zoomIn和zoomOut函數應模擬以SVG為中心的鼠標滾輪事件。

這是基於以下答案的解決方案: http : //jsbin.com/dociwuvacu/1

我相信我已經成功更新了您的小提琴,但是如果沒有,這是您需要的代碼類型:

function zoomIn() {    
    zoomer.scale(zoomer.scale()+.1);
    zoomer.event(svg);
}

function zoomOut() {
    zoomer.scale(zoomer.scale()-.1);
    zoomer.event(svg);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM