2015-03-12 2 views
0

Я использую PrimeFaces 5.1 и имею простую диаграмму области, график которой насчитывает три серии с течением времени. То, что я нахожу, состоит в том, что, учитывая приведенный ниже пример, время перекрывается и строки не нарисованы. Я не вижу ошибок в консоли.Графические диаграммы областей PrimeFaces, перекрывающие ярлыки xaxis

С моей фасоли:

private LineChartModel egmModel; 

public void init() { 
    egmModel = new LineChartModel(); 

    LineChartSeries g2scLCS = new LineChartSeries(); 
    g2scLCS.setFill(true); 
    g2scLCS.setLabel(ComponentType.G2SSSC.getShortName()); 
    g2scLCS.set("12:50", 0); 
    g2scLCS.set("12:51", 10); 
    g2scLCS.set("12:51", 20); 

    LineChartSeries vlcsscLCS = new LineChartSeries(); 
    vlcsscLCS.setFill(true); 
    vlcsscLCS.setLabel(ComponentType.VLCSSC.getShortName()); 
    vlcsscLCS.set("12:50", 10); 
    vlcsscLCS.set("12:51", 20); 
    vlcsscLCS.set("12:51", 30); 

    LineChartSeries totalLCS = new LineChartSeries(); 
    totalLCS.setFill(true); 
    totalLCS.setLabel("Configured"); 
    totalLCS.set("12:50", 20); 
    totalLCS.set("12:51", 30); 
    totalLCS.set("12:51", 50); 

    egmModel.addSeries(g2scLCS); 
    egmModel.addSeries(vlcsscLCS); 
    egmModel.addSeries(totalLCS); 
    egmModel.setTitle("EGM's"); 
    egmModel.setLegendPosition("e"); 
    egmModel.setStacked(true); 
    egmModel.getAxis(AxisType.X).setLabel("Time"); 
    egmModel.getAxis(AxisType.Y).setLabel("Count"); 
    egmModel.getAxis(AxisType.Y).setMin(0); 
} 

public LineChartModel getEgmModel() { 
    return egmModel; 
} 

И XHTML:

<p:chart id="egmChart" type="line" model="#{dxAgentBean.egmModel}" /> 

ли кто-то есть некоторое представление о том, что может быть неправильно?

ответ

0

Проблема была в том, что я не определял ось X как ось даты.

DateAxis minuteAxis = new DateAxis();  
    minuteAxis.setTickFormat("%R"); 
    minuteAxis.setMin("00:00"); 
    minuteAxis.setMax("23:59"); 
    minuteAxis.setTickInterval("7200"); 
    minuteAxis.setTickAngle(-1); 
    minuteAxis.setLabel("Time"); 
Смежные вопросы