2013-08-12 2 views
2

linechart를 구현해야하는 곳에서 응용 프로그램을 개발 중입니다.Achart 엔진을 사용하여 세로 선 차트 그리기

나는 차트 차트를 그리기 위해 Achart 엔진을 사용하고 있지만 일부 샘플 좌표를 사용하여 세로선을 그려보고 싶지만이를 달성하지 못했습니다. 그러나 나는 수평선을 그릴 수 있지만 수직선은 그릴 수 없다.

int[] x = { 1,2,3,4,5,6,7,8 }; 
        int[] systolic = { 90,90,100,70,90,100,110,70}; 
        //int[] systolic = { 90,90,90,90,90,90,90,90}; 
        /* int[] diastolic = {70, 60, 65, 70, 45, 60, 70, 90 }; 
        int[] pulse = {45, 60, 45, 80, 65, 50, 90, 70};*/ 

        // Creating an XYSeries for Income 
        XYSeries systolicSeries = new XYSeries("Systolic"); 
        // Creating an XYSeries for Expense 
        XYSeries diastolicSeries = new XYSeries("Diastolic"); 
        // Creating an XYSeries for Expense 
        XYSeries pulseSeries = new XYSeries("Pulse"); 

        // Adding data to Income and Expense Series 
        for(int i=0;i<x.length;i++){ 
         systolicSeries.add(x[1], systolic[i]); 
         // diastolicSeries.add(x[i],diastolic[i]); 
         // pulseSeries.add(x[i],pulse[i]); 
        } 

        // Creating a dataset to hold each series 
        XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset(); 
        // Adding Income Series to the dataset 
        dataset.addSeries(systolicSeries); 
        // Adding Expense Series to dataset 
        // dataset.addSeries(diastolicSeries); 
        // Adding Expense Series to dataset 
        // dataset.addSeries(pulseSeries); 



        // Creating XYSeriesRenderer to customize incomeSeries 
        XYSeriesRenderer incomeRenderer = new XYSeriesRenderer(); 
        incomeRenderer.setColor(Color.WHITE); 
        incomeRenderer.setPointStyle(PointStyle.CIRCLE); 
        incomeRenderer.setFillPoints(true); 
        incomeRenderer.setLineWidth(2); 
        incomeRenderer.setDisplayChartValues(true); 

       /* // Creating XYSeriesRenderer to customize expenseSeries 
        XYSeriesRenderer expenseRenderer = new XYSeriesRenderer(); 
        expenseRenderer.setColor(Color.YELLOW); 
        expenseRenderer.setPointStyle(PointStyle.CIRCLE); 
        expenseRenderer.setFillPoints(true); 
        expenseRenderer.setLineWidth(2); 
        expenseRenderer.setDisplayChartValues(true); 

       // Creating XYSeriesRenderer to customize incomeSeries 
        XYSeriesRenderer pulseRenderer = new XYSeriesRenderer(); 
        incomeRenderer.setColor(Color.WHITE); 
        incomeRenderer.setPointStyle(PointStyle.CIRCLE); 
        incomeRenderer.setFillPoints(true); 
        incomeRenderer.setLineWidth(2); 
        incomeRenderer.setDisplayChartValues(true);*/ 

        // Creating a XYMultipleSeriesRenderer to customize the whole chart 
        XYMultipleSeriesRenderer multiRenderer = new XYMultipleSeriesRenderer(); 
        multiRenderer.setXLabels(0); 
        multiRenderer.setChartTitle("Blood Pressure"); 
        multiRenderer.setXTitle("Date"); 
        multiRenderer.setYTitle("Value"); 
        multiRenderer.setZoomButtonsVisible(true); 
        for(int i=0;i<x.length;i++){ 
         multiRenderer.addXTextLabel(i+1, mMonth[i]); 
        } 

        // Adding incomeRenderer and expenseRenderer to multipleRenderer 
        // Note: The order of adding dataseries to dataset and renderers to multipleRenderer 
        // should be same 
        multiRenderer.addSeriesRenderer(incomeRenderer); 
        // multiRenderer.addSeriesRenderer(expenseRenderer); 
        // multiRenderer.addSeriesRenderer(pulseRenderer); 

        mChartView = ChartFactory.getLineChartView(this, dataset, multiRenderer); 
        mChartView.setBackgroundColor(Color.BLACK); 

        linlayChartLogContainer.addView(mChartView); 

       } 
      catch (Exception e) 
       { 
        e.printStackTrace(); 
       } 

답변

0

AchartEngine에서 막대 차트를 사용해 보셨습니까?

+0

세로선을 그릴 수 있지만 포인트를 그리기를 원합니다. 나는 생각합니다. – dd619

관련 문제