2016-06-30 6 views
2

Ich habe versucht, dies zu lösen für eine Weile jetzt, aber ohne Glück.nvd3 - Wie neu Achse auf Windows Größe ändern

Ich muss in der Lage sein, mein Diagramm zu skalieren und die Maßstäbe (nur X im Moment) auf Fenstergröße zu aktualisieren.

Ich versuchte mit nv.utils.windowResize und mit window.on("resize", update); Aber keiner der oben genannten funktioniert.

Die Funktion, die meine Achse generiert, wird jedes Mal aufgerufen (console.log ist erreicht), aber aus irgendeinem Grund wird die Achse nicht im Diagramm aktualisiert.

Irgendwelche Vorschläge? Dies ist mein erster Versuch mit D3 und NVD3 und es ist ein bisschen kompliziert.

Danke für die Geduld und Unterstützung, hier ist ein Beispiel-Code (Winkel js verwenden): http://codepen.io/NickHG/pen/rLWNea?editors=0010

Antwort

0

Es Nähte, wie ich dieses Problem zu lösen geführt.

Es ist nicht klar, alle in der Dokumentation, aber das ist, was ich tat:

var width = window.innerWidth; 
var xScale = d3.time.scale().domain([date, date]).nice(d3.time.day).range([0, width]) 

chart.xAxis.scale(xScale) 
      .ticks(6) 
      .tickFormat(d3.time.format("%H:%M")) 

nv.utils.windowResize(function() { 
      width = window.innerWidth; 
      chart.xAxis.range([0, width]) 
      chart.update()  
}); 
Verwandte Themen