刻度添加后的日期格式jqplot categoryaxisrenderer

我使用jQplot和primeFaces。

我想要一个CategoryAxis的日期格式化程序(日期以毫秒为单位)。

我在Stack上找到了不同的解决方案,但问题似乎是我的问题:它们是在“创建之后”添加并且没有考虑选项/格式。

ticks: this.cfg.categories, 

我使用datetickformatter,自定义datetickformatter,CanvasAxisTickRenderer和CanvasAxisTickRenderer版本进行了测试。 徒然。

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

谢谢,Ju。

我使用CategoryAxisRenderer和CanvasTickRenderer的组合发现了同样的问题。 我想出了在javascript中手动格式化类别然后将它们传递给渲染器的解决方案。 在您的情况下,您可以使用以下作为您的primefaces图表的扩展程序:

 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 } } }; }