2012-08-09 9 views
5

मैं jqPlot उपयोग करना चाहते हैं और दिनांक मानों की एक श्रृंखला के रूप में एक धुरी प्रस्तुत करना होगा - jqPlot के कच्चे पैकेज फ़ॉन्ट यहाँ हो सकता है:jQPlot dateAxisRenderer क्यों सही काम नहीं कर रहा है?

http://www.jqplot.com/

http://www.jqplot.com/docs/files/plugins/jqplot-dateAxisRenderer-js.html

समस्या यह है :

क) xaxis बाईं ओर से शुरू नहीं करते हैं और यह भी मान है कि मैं देखने के लिए नहीं करना चाहती दिखाएगा

बी)

सी) मुझे अधिक संख्या के साथ दाईं ओर एक ही समस्या है, मैं xaxis 1 2 3 4 5 पर सभी दिन रखना चाहता हूं ... 31 3 6 9 ...

घ) यह नीचे (बस एक छोटा सा करने के लिए ऑफसेट का एक प्रकार सेट करना संभव है ...)

स्क्रीनशॉट: Picture from current status

मेरे कोड:

$.jqplot('chartdiv', [ 
    [ 
     ['2012-08-01', 0], 
     ['2012-08-02', 0], 
     ['2012-08-03', 0], 
     ['2012-08-04', 0], 
     ['2012-08-05', 0], 
     ['2012-08-06', 0], 
     ['2012-08-07', 1], 
     ['2012-08-08', 0], 
     ['2012-08-09', 6], 
     ['2012-08-10', 0], 
     ['2012-08-11', 0], 
     ['2012-08-12', 0], 
     ['2012-08-13', 0], 
     ['2012-08-14', 0], 
     ['2012-08-15', 0], 
     ['2012-08-16', 0], 
     ['2012-08-17', 0], 
     ['2012-08-18', 0], 
     ['2012-08-19', 0], 
     ['2012-08-20', 0], 
     ['2012-08-21', 0], 
     ['2012-08-22', 0], 
     ['2012-08-23', 0], 
     ['2012-08-24', 0], 
     ['2012-08-25', 0], 
     ['2012-08-26', 0], 
     ['2012-08-27', 0], 
     ['2012-08-28', 0], 
     ['2012-08-29', 0], 
     ['2012-08-30', 0], 
     ['2012-08-31', 0] 
    ] 
], { 
    title: 'Downloadstatistik', 
    axes: { 
     xaxis: { 
      renderer: $.jqplot.DateAxisRenderer, 
      tickOptions: { 
       formatString: '%#d', 
       tickInterval: '1 month' 
      }, 
      pad: 1.0 
     }, 
     yaxis: { 
      tickOptions: { 
       formatString: '%.0f' 
      }, 
      min: 0 
     } 
    } 
}); 

उत्तर

10

शुरू करने के लिए, आप अपने tickInterval स्थापित करने के लिए प्रयास करना चाहिए करने के लिए "1 दिन" :)

इस के बाद, चाल स्थापित करने के लिए है अपने xaxis न्यूनतम और अधिकतम अपनी तिथियाँ सरणी के पहले और अंतिम मूल्यों के अनुसार ।

यहाँ एक उदाहरण है:

var timeline = [[ 
    ['2012-08-01', 0], ['2012-08-02', 0], ['2012-08-03', 0], 
    ['2012-08-04', 0], ['2012-08-05', 0], ['2012-08-06', 0], 
    ['2012-08-07', 1], ['2012-08-08', 0], ['2012-08-09', 6], 
    ['2012-08-10', 0], ['2012-08-11', 0], ['2012-08-12', 0], 
    ['2012-08-13', 0], ['2012-08-14', 0], ['2012-08-15', 0], 
    ['2012-08-16', 0], ['2012-08-17', 0], ['2012-08-18', 0], 
    ['2012-08-19', 0], ['2012-08-20', 0], ['2012-08-21', 0], 
    ['2012-08-22', 0], ['2012-08-23', 0], ['2012-08-24', 0], 
    ['2012-08-25', 0], ['2012-08-26', 0], ['2012-08-27', 0], 
    ['2012-08-28', 0], ['2012-08-29', 0], ['2012-08-30', 0], 
    ['2012-08-31', 0] 
]]; 
var plot = $.jqplot('chartdiv', timeline, { 
    title: 'Downloadstatistik', 
    axes: { 
     xaxis: { 
      renderer: $.jqplot.DateAxisRenderer, 
      tickOptions: { formatString: '%#d' }, 
      tickInterval: '1 day', 
      min: timeline[0][0][0], 
      max: timeline[0][timeline[0].length-1][0] 
     }, 
     yaxis: { 
      tickOptions: { formatString: '%.0f' }, 
      min: 0 
     } 
    } 
}); 

इसके अलावा मुझे लगता है कि कोई पैड की जरूरत है।

संपादित करें (नई jsFiddle जोड़ा):

आप यहाँ यह कोड का नमूना परीक्षण कर सकते हैं: http://jsfiddle.net/JhHPz/4/

+0

खैर ठीक इस काम करता है। लेकिन नीचे की रेखा में (xaxis jqplot 1,2,3,4,5,6 के बजाय सभी दिन संख्या 1, 3, 6, 9 के रूप में नहीं दिखाता है ... डेटा से "बिंदु" चिह्नित किया जाता है ... – spotlr

+0

क्षमा करें, मैं निश्चित रूप से मिस-क्लिक करता हूं जब jsFiddle लिंक कॉपी/पेस्ट करता है। मैंने अपना जवाब एक नए के साथ अपडेट किया है। इसके अलावा, आप क्या कहते हैं जब आप कहते हैं: 'डेटा से" डॉट्स "चिह्नित हैं '' – TwystO

+0

धन्यवाद, अब महान काम करता है;) – spotlr