2010-07-28 15 views
5

का उपयोग कर एक्स एक्सिस के लिए दिनांक मान कैसे सेट करें मैंने हाल ही में अपनी ग्राफिंग आवश्यकताओं के लिए gRaphael का उपयोग करना शुरू कर दिया है और अब तक बहुत प्रभावित हूं। हालांकि, लाइन ग्राफ़ का उत्पादन करते समय मैंने कुछ कठिनाई में भाग लिया है, विशेष रूप से जब मैं एक्स अक्ष के लिए मानों को सेट करने का प्रयास करता हूं, तो ग्राफ प्रस्तुत करने में विफल रहता है। मेरे कोड ग्राफ उत्पन्न करने के लिए है:gRaphael लाइन ग्राफ़

<script type='text/javascript' charset='utf-8'> 


      var r = Raphael('holder'); 


      var lines = r.g.linechart(20, 20, 600, 300, [[1, 2, 3, 4, 5, 6, 7]], [['4.16','6.35','1.77','3.1','9.79','10.03','-0.3']], {nostroke: false, axis: '0 0 1 1', symbol: 'o', smooth: false}).hoverColumn(function() { 
       this.tags = r.set(); 
       for (var i = 0, ii = this.y.length; i < ii; i++) { 
        this.tags.push(r.g.tag(this.x, this.y[i], this.values[i], 160, 10).insertBefore(this).attr([{fill: '#fff'}, {fill: this.symbols[i].attr('fill')}])); 
       } 
      }, function() { 
       this.tags && this.tags.remove(); 
      }); 
      lines.symbols.attr({r: 3}); 



    </script> 
    <div id='holder'></div> 

मैं कैसे बदलने के लिए सक्षम हो जाएगा एक्स अक्ष कहते हैं '1, 2, 3, 4, 5, 6, 7' के साथ मान के लिए 'जनवरी 2001, फरवरी 2001 , मार्च 2001 ... आदि ... आदि .... '?

वास्तव में बहुत धन्यवाद, सभी की बहुत सराहना की मदद!

उत्तर

7

सबसे पहले आपको चार्ट को कुछ मूल्य देना होगा जो इसकी शिकायत नहीं करेंगे। अपने मामले तुम यूनिक्स बचा सकता है में टाइमस्टैम्प आदि तो फिर तुम कुछ इस तरह का उपयोग कर मूल्यों को बदल सकते हैं (का उपयोग करते हुए प्रोटोटाइप आदि):

lines.axis[0].text.items.each(function (index, label) { 
     //Get the timestamp you saved 
     originalText = label.attr('text'); 
     newText = 'CONVERT TIMESTAMP TO DATE USING originalText as input HERE'; 
     //label.rotate(75); 
     label.attr({'text': newText}); 
    }); 

चाहते प्रत्येक एक नियमित

for(var x = 0; x < lines.axis[0].text.length; x++) 
द्वारा बदला जा सकता है

लूप अगर आपको पसंद है।

+0

वास्तव में बहुत धन्यवाद :) – SW4

+0

यह उत्तर गलत है! नीचे दिए गए उत्तर में तर्क (अनुक्रमणिका, लेबल) होना चाहिए। आखिर में अंतर देखने से पहले यह भ्रम के एक घंटे की तरह हुआ। – chiliNUT

+0

हाय। मैं वास्तव में इसके लिए नया हूँ। मैं बस सोच रहा हूं कि हमें इस कोड को बिल्कुल कहां डालना चाहिए ... मेरा मतलब है कि मेरे पास निम्न कोड var lines = r.linechart (30, 30, 600, 440, [[01/01/2014,02/01/2014 है, 03/01/2014,04/01/2014,05/01/2014]], [[100,150,130,85,100]], {axisxstep: 20, nostroke: false, axis: "0 0 1 1", प्रतीक: "सर्कल ", चिकनी: सत्य})। होवर कॉलम (फ़ंक्शन() { यह.tags = r.set(); (var i = 0, ii = this.y.length; i

2
$.each(lines.axis[0].text.items , function (index, label) { 
    var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'], 
     date = new Date(parseInt(label.attr("text"))), 
     day = date.getDate(), 
     month = months[date.getMonth()];; 

    dateText = month + " " + day; 
    //label.rotate(75); 
    label.attr({'text': dateText}); 
}); 
संबंधित मुद्दे