2017-02-22 6 views
1

Ich habe ein D3-Diagramm, das nach 2 Sekunden aktualisiert werden sollte. Während sich die Achse ändert, tut dies die Linie selbst nicht.Warum ändert sich die Leitung nicht?

https://jsfiddle.net/horacebury/jwcngdLv/1/

Ich denke, das sollte die Achse und die Linie updaten, aber was bin ich dabei?

// Make the changes 
    svg.select(".line") // change the line 
    .duration(1000).attr("d", valueline(data)); 
    svg.select(".x.axis") // change the x axis 
    .duration(1000).call(xAxis); 
    svg.select(".y.axis") // change the y axis 
    .duration(1000).call(yAxis); 

Antwort

1

Sie verfehlten die Klasse auf den Pfad so hinzuzufügen:

svg.append("path") // Add the valueline path. 
.classed("line", true) //add class to the path 
.attr("d", valueline(data)); 

Grund: line wählen Sie den Pfad, den Sie werden mit dem Klassennamen In Ihrer Update-Funktion.

svg.select(".line") // change the line 
    .duration(1000).attr("d", valueline(data)); 

Code arbeiten here

+1

ehrfürchtig. Ich kann nicht sagen, dass ich verstehe, warum das so ist, aber das ist alles neu für mich, also wird es hoffentlich kommen. Vielen Dank! –

Verwandte Themen