2013-08-20 1 views
2

XYSeries 추가 메소드는 add (double, double) 만 허용합니다. 왜 TimeSeries와 비슷한 add (java.util Date, double)를 받아들이지 않을 수 있습니까?TimeSeries와 XYSeries AchartEngine

X 축 = 날짜, 2 Y 축 (왼쪽 및 오른쪽) = 값을 플로트하고 싶습니다. 그러나 제가 경험 한 문제는 이중 y 축 플롯 (오른쪽의 보조 Y 축) (Date, double) 값과 함께 TimeSeries add 메서드를 사용하는 경우. XYSeries를 사용하면 이중 Y 축 플롯을 수행 할 수 있지만 X 축에서 Dates는 수용하지 않습니다.

코드는 아래와 같습니다 :

public void addXYSeries(XYMultipleSeriesDataset dataset, String[] titles, 
    List<Date[]> xValues, List<double[]> yValues, int scale) { 
    int length = titles.length; 
    for (int i = 0; i < length; i++) { 
     //XYSeries series = new XYSeries(titles[i], scale); 
     TimeSeries series = new TimeSeries(titles[i]); 
     Date[] xV = xValues.get(i); 
     double[] yV = yValues.get(i); 
     int seriesLength = xV.length; 
     for (int k = 0; k < seriesLength; k++) { 
      series.add(xV[k], yV[k]); 
     } 
     dataset.addSeries(series); 
    } 
} 

enter image description here

답변

1

X 축은는 당신이 정말로 라인 차트가 함께 표시하려는 경우 동일한 가치를 공유해야합니다.

그래서 차트 X 축을 모두 날짜 값으로 지정하거나 모두 X 값을 이중 값으로 지정해야합니다.

+0

차트의 X 축은 날짜 값으로 설정되며 동일한 날짜 값 (X1과 X2는 같은 날짜 값을 가짐)을 공유합니다. – cloudviz

+0

다음과 같이 할 수 있습니다. series.add (date.getTime(), value); XYSeries에서. –

+0

그것은 작동합니다. 도와 줘서 고마워. 이제는 x 축과 y 축 (왼쪽과 오른쪽)에 날짜를 표시 할 수 있습니다. – cloudviz