2014-01-17 3 views
2

primeFaces와 함께 jQplot을 사용합니다.틱 이후 날짜 형식 jqplot categoryaxisrenderer 추가

나는 CategoryAxis에 (날짜 밀리에있는)의 날짜 포매터를하고 싶습니다.

나는 스택에 다른 해결책을 찾았지만 문제는 내 틱 것으로 보인다 : 그들은 추가 생성 및 옵션/형식 "후"고려되지 않습니다 있습니다.
ticks: this.cfg.categories, 

나는 CanvasAxisTickRenderer의 datetickformatter, 사용자 정의 datetickformatter, CanvasAxisTickRenderer 및 에디션에서 테스트. 헛된.

this.cfg.axes = { 
    xaxis: { 
     renderer: $.jqplot.CategoryAxisRenderer, 
     rendererOptions: { 
      tickRenderer: $.jqplot.CanvasAxisTickRenderer 
     }, 
     tickOptions: { 
      formatString: '%a.', 
      fontSize:'7pt', 
     }, 
     ticks: this.cfg.categories, 
    }, 

감사합니다, 후아.

답변

2

나는 CategoryAxisRenderer과 CanvasTickRenderer의 조합을 사용하여 동일한 문제를 발견했다. 나는 자바 스크립트에서 손으로 카테고리를 형성 한 다음 렌더러에 전달하는 솔루션을 생각해 냈습니다. 당신의 primefaces 차트 extender로 다음을 사용할 수 있습니다 :

function extender() { 

var millis = this.cfg.categories; 
var dates = new Array(categories.length); 

for (var i = 0; i < categories.length; i++) { 
    dates[i] = new Date(categories[i]).toLocaleDateString(); 
} 

this.cfg.axes = { 
    xaxis : { 
     renderer : $.jqplot.CategoryAxisRenderer, 
     rendererOptions : {    
      tickRenderer : $.jqplot.CanvasAxisTickRenderer, 
      tickOptions : { 
       fontSize:'7pt'         
      }, 
      ticks : dates 
     } 
    } 
}; 
} 
+0

나를 위해 일합니다. 경고 : 날짜를 잊지 마세요는 숫자가 아닌 문자열이 필요합니다. 자세한 정보 : [http://stackoverflow.com/questions/17371302/new-datemilliseconds-returns-invalid-date](http://stackoverflow.com/questions/17371302/new-datemilliseconds-returns-invalid-date) '날짜 [I] = 새로운 날짜 (+ this.cfg.categories [I]) toLocaleDateString(). ' 많은 감사합니다. –