如何使用PrimeFaces和ChartJs显示时间戳数据?
由于PrimeFaces的公共7.0版本包括ChartJs,我想我应该试试 它工作得很好,但到目前为止,我还无法在折线图中正确显示值随时间变化的数据 为此,chart.js具有笛卡尔时间轴,但在PrimeFaces中,只有笛卡尔线性可用 将日期对象(而不是字符串标签)馈送到ChartData只会导致不绘制x轴 在Primefaces中包含chart.js时,是我遗漏了什么,还是他们只是跳过了这个功能?好的,问题很好 首先,PF知道他们尚未实施时间,但有一个公开的问题: 第二,不用担心,您可以使用Extender功能使其正常工作。下面是我们使用的一个示例如何使用PrimeFaces和ChartJs显示时间戳数据?,primefaces,chart.js,Primefaces,Chart.js,由于PrimeFaces的公共7.0版本包括ChartJs,我想我应该试试 它工作得很好,但到目前为止,我还无法在折线图中正确显示值随时间变化的数据 为此,chart.js具有笛卡尔时间轴,但在PrimeFaces中,只有笛卡尔线性可用 将日期对象(而不是字符串标签)馈送到ChartData只会导致不绘制x轴 在Primefaces中包含chart.js时,是我遗漏了什么,还是他们只是跳过了这个功能?好的,问题很好 首先,PF知道他们尚未实施时间,但有一个公开的问题: 第二,不用担心,您可以使用
chartModel.setExtender(“chartExtender”);
函数chartExtender(){
//将配置选项复制到变量中
var options=$.extend(true,{},this.cfg.config);
选项={
//删除图例
图例:{
显示:假
},
比例:{
xAxes:[{
显示:对,
键入:“时间”,
时间:{
解析器:“h:mm:ssa”,
tooltipFormat:'h:mm:ss a',
单位:小时,
显示格式:{
“小时”:“h:mm:ss a”
}
}
}],
雅克斯:[{
显示:对,
scaleLabel:{
显示:对,
标签字符串:“你的Y轴”,
尺寸:13,
}
}]
}
};
//将所有选项合并到主图表选项中
$.extend(true,this.cfg.config,options);
};
您可以从中查看可用的不同时间格式。作为扩展程序工作的补充,请使用this.cfg.config.options={ 例如:
function extName() {
this.cfg.config.options = {
legend: {
display: false
}
};
};
谢谢,这看起来很有希望!但是我无法让它工作-在视图加载时执行extender函数,但是没有应用设置。js控制台上没有缩放标签,没有颜色…也没有错误。我使用字符串作为数据点的标签,按照中作为“解析器”值给出的格式格式化扩展器,这是正确的方法吗?非常感谢您的帮助!!没关系,它现在正在工作。我没有复制options对象,而是直接在扩展器中操作了this.cfg.config,只交换了比例。也许您的解决方案正在工作,因为您的项目有特定的东西?是的,这就是为什么我要复制它d把它合并回来!好的,我明白了。你能修改你的答案吗,这样它就不需要项目细节了?我很乐意接受它!无论如何,非常感谢你给我指出了正确的方向!好的,我想我已经做得够详细了,让它变得不具体了!