日期格式jqplotcategoryaxisrenderer后添加刻度

2024-01-04

我将 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,
    },

谢谢, 朱。


我使用 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
        }
    }
};
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

日期格式jqplotcategoryaxisrenderer后添加刻度 的相关文章

随机推荐