Java Primefaces折线图未显示正确的日期值(Google Chrome)

Java Primefaces折线图未显示正确的日期值(Google Chrome),java,tomcat,charts,primefaces,apache-tomee,Java,Tomcat,Charts,Primefaces,Apache Tomee,我在Google Chrome上使用Primefaces图表时遇到问题。我想根据具体日期(X轴)显示一系列值(Y轴)。不幸的是,日期(X轴)的值在Google Chrome中没有正确显示(Firefox和Internet Explorer运行良好) 下面是一个小例子来说明这个问题 xhtml: <p:chart type="line" model="#{chartViewController.chartData}" style="height: 300px"/> 到 谢谢你们的意见

我在Google Chrome上使用Primefaces图表时遇到问题。我想根据具体日期(X轴)显示一系列值(Y轴)。不幸的是,日期(X轴)的值在Google Chrome中没有正确显示(Firefox和Internet Explorer运行良好)

下面是一个小例子来说明这个问题

xhtml:

<p:chart type="line" model="#{chartViewController.chartData}" style="height: 300px"/>


谢谢你们的意见

真正奇怪的是IE在2018年8月29日至2019年3月3日上映,而Chrome却在展示一个完全不同的日期范围?Chrome将在2017年12月9日之前启动整整一年?因此,对我来说,这毫无意义,它看起来几乎像两个完全不同的数据集。看起来您可能需要JqPlot中的numberTicks选项:我删除了tickInterval,让primefaces选择一个有效范围。不幸的是,它并没有修复它。这真的很奇怪。Chrome(谷歌)正变得很奇怪。越来越多的人走自己的路,他们的新浏览器切换到同一个“引擎”的cks上,赚了M$。。。
@Named
@ViewScoped
public class ChartViewController implements Serializable {


    public LineChartModel getChartData() {
        LineChartModel lineChartModel = new LineChartModel();
        LineChartSeries dataSeries = new LineChartSeries();
        SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy");

        dataSeries.setLabel("Data");
        Calendar cal = Calendar.getInstance();
        cal.add(Calendar.HOUR, -200*24);
        for (int i = 0; i < 200; i++) {
            dataSeries.set(sdf.format(cal.getTime()), i);
            cal.add(Calendar.HOUR, 24);
        }

        /* Add values for y axis */
        lineChartModel.setLegendPosition("ne");
        lineChartModel.getAxis(AxisType.Y).setLabel("Values");
        lineChartModel.addSeries(dataSeries);

        DateAxis axis = new DateAxis("Datum");
        axis.setTickAngle(-50);
        axis.setMax(sdf.format(new Date()));
        axis.setTickInterval("3 weeks");
        axis.setTickFormat("%d.%m.%y");
        lineChartModel.getAxes().put(AxisType.X, axis);
        lineChartModel.setZoom(true);

        return lineChartModel;
    }
}
dataSeries.set(sdf.format(cal.getTime()), i);
...
axis.setMax(sdf.format(new Date()));
dataSeries.set(cal.getTime().getTime(), i);
...
axis.setMax((new Date()).getTime());