2017-04-21 1 views
0

PrimeFaces (버전 : 6.0.0)에 라인 차트를 플롯하려고합니다. 그래프를 볼 때 Y 축 값이 순서대로 표시되지 않습니다.Y 축 플롯팅 값이 프라임면에서 증분 순서가되지 않음

첨부 된 차트는 다음과 같습니다 [screenshot].

왜 내가 표시되지 않는 이유는 무엇입니까?

XHTML :

<p:chart type="line" model="#{BackingBean.lineCurrentLineChart}" 
rendered="#{not empty BackingBean.lineCurrentLineChart}" id="liveChart" style="height:500px;width:500px" /> 

BackingBean.java

public void CurrentExecutionLiveChart() 
{ 
    if(lineCurrentLineChart != null) 
    { 
     lineCurrentLineChart.clear(); 
    } 
    lineCurrentLineChart = new LineChartModel(); 


    Axis Yaxis = new CategoryAxis("Execution Time in Minutes"); 
    Yaxis.setMin(0); 
    Yaxis.setMax(59); 
    Yaxis.setTickFormat("%d"); 
    Yaxis.setTickInterval("5"); 
    lineCurrentLineChart.getAxes().put(AxisType.Y, Yaxis); 


    Axis xAxis = new CategoryAxis("Scenario Name"); 
    xAxis.setTickAngle(-90);   
    lineCurrentLineChart.getAxes().put(AxisType.X, xAxis); 

    LineChartSeries ch = new LineChartSeries(); 

    ch.setLabel("ScenarioList"); 
    ch.set("Sce_1", 0); 
    ch.set("Sce_2", 16); 
    ch.set("Sce_3", 18); 
    ch.set("Sce_4", 12); 
    ch.set("Sce_5", 4); 
    ch.set("Sce_6", 32); 
    ch.set("Sce_7", 12); 
    ch.set("Sce_8", 0); 
    ch.set("Sce_9", 0); 
    ch.set("Sce_10", 10); 
    ch.set("Sce_11", 0); 
    ch.set("Sce_12", 0); 


    lineCurrentLineChart.addSeries(ch); 
} 
+0

읽어주십시오과 [mcve] – Kukeltje

+0

희망을 [질문], 이러한 세부 사항은 애널리스트의 질문에 충분하다 . – Neerajkumar

+0

그래서'ConvertHHMMSStoMinutes'를 사용하지 않고 변환 된 분을 수동으로 입력하면 작동합니까? – Kukeltje

답변

0

나는 물었다 질문에 당신을 업데이트하고 싶습니다. 문제가 있었음 Axis Yaxis = lineCurrentLineChart.getAxis(AxisType.Y);

카테고리 클래스를 사용하여 Yaxis를 만들면 안됩니다. 따라서 변경 후 Axis Yaxis = lineCurrentLineChart.getAxis(AxisType.Y);Axis Yaxis = lineCurrentLineChart.getAxis(AxisType.Y);

내 문제가 해결되었습니다.

올바른 차트 이미지를 첨부하고 있습니다. 참조를 위해

여기 Click Here

솔루션,

Axis Yaxis = lineCurrentLineChart.getAxis(AxisType.Y); 
    Yaxis.setLabel("Execution Time in Minutes"); 
    Yaxis.setMin(0); 
    Yaxis.setMax(100); 
    Yaxis.setTickFormat("%d"); 
    Yaxis.setTickInterval("5");  

    Axis xAxis = new CategoryAxis("Scenario Name"); 
    xAxis.setTickAngle(-90);   
    lineCurrentLineChart.getAxes().put(AxisType.X, xAxis); 

당신에게 @Kukelje 감사는

+0

잘 작동합니다. 다음 질문에 [mcve]를 직접 만들면 좋을 것입니다. (의견은 '개선'되었지만 의견의 정보를 사용하십시오. 그리고 당신의 대답을 다시 읽어주세요. 몇 가지 중복 된 코드와 다른 코드가 누락되었습니다. – Kukeltje