2016-08-10 2 views
0

Ich verwende d3 Achse, um das Balkendiagramm zu zeigen, und ich habe Zoom Interaktion hinzugefügt. I Zoom Interaktion wie dieses bin HinzufügenZoom Ausmaß Problem in d3 Achse

d3.zoom(xScale).on("zoom", jQuery.proxy(function(){ 
     //Do somthing on zooming.     
     },this)); 
},this)); 

auf der Achse Zooming i die bekommen, um auf welcher Ebene die Achse gezoomt wird, suppose betrachten i Zeitachse haben auf Zoomen es die Etiketten in Tag Ebene zeigen Nach erneutem Zoomen wird die Achse in Stundenebene angezeigt. Also wie kommt man dazu, ob nach dem Zoomen Tages- oder Stundenpegel gezoomt wird?

+0

Dieser Referenzlink könnte nützlich sein, um Ihre Anforderung http://bl.ocks.org/nnattawat/9689303 zu erfüllen – Aditya

Antwort

0

Angenommen, Sie zielen auf d3 Version 4, der beste Weg, um dies zu handhaben ist mit der Zoom-Funktionalität rescaleX. Sagen wir folgende Zoom-Handler, wo x die Waage auf die x-Achse gebunden ist:

function zoomed() { 
    var newScale = d3.event.transform.rescaleX(x)); 
    console.log(newScale.domain()); 
} 

Würde log die Grenzen (min/max) Ihrer gezoomt Achse.