2012-11-30 20 views
5

के लिए डेटा सॉर्ट करें मैं d3.js के साथ पथ बनाना चाहता हूं जिसमें x-axis के लिए तिथियां हैं। यह पूरी तरह से काम कर रहा है, लेकिन मेरी समस्या यह है, कि मेरे json-वस्तु पृथक नहीं किया जा रहा है ताकि पथ सही नहीं है: enter image description hered3.js पथ

मैं एक समारोह है कि अपने डेटा सॉर्ट करता नहीं पा सके - या मैं की क्या ज़रूरत है अपने आप से एक लिखो? यदि हाँ, मैं यह कोशिश करेंगे, लेकिन अगर वहाँ एक और संभावना .. है;)

  var line = d3.svg.line() 
       .interpolate("linear") 
       .x(function(d) { return x(d.finished_at); }) 
       .y(function(d) { return y(d.result); }); 

      svg.selectAll("path") 
       .data(data) 
      .enter().append("path") 
       .attr("class", "line") 
       .attr("d", line(data)); 

किसी को भी एक विचार है? धन्यवाद!

उत्तर

5

क्या आपने d3.ascending देखा है? https://github.com/mbostock/d3/wiki/Arrays#wiki-d3_ascending

या आप यह कर सकते हैं ...

Sorting a selection in d3.js disturbs the data-join

+4

आपके उत्तर के लिए धन्यवाद। मुझे लगता है कि मुझे पहले समझ नहीं मिली;) अब मैंने शुरुआत में एक समारोह लिखा है जो बहुत आसान है: 'data.sort (फ़ंक्शन (ए, बी) {वापसी d3.ascending (a.finished_at, b.finished_at); }); ' – cruxi

+0

हाँ ... d3.js के साथ खेलते समय मुझे एपीआई को समझने में कुछ दिन लगे। –