使用MPAndroid不绘制线图

时间:2016-08-05 05:04:38

标签: android linechart mpandroidchart

我想使用MPAndroid在一个线图中分别绘制两个折线图。这是我的代码。 但是当我运行我的APP时,它就崩溃了!我认为这一行有一些问题" LineData plotData = new LineData(lines);"。谢谢你的回复

       lineChart=(LineChart) findViewById(R.id.graph);
        int size=Pn_points.size();
        ArrayList<Entry> yVals = new ArrayList<Entry>();
        ArrayList<Entry> yVals_ABA = new ArrayList<Entry>();
        ArrayList<Entry> xVals = new ArrayList<Entry>();
        ArrayList<Entry> xVals_ABA = new ArrayList<Entry>();
        // --------------------------------------------
        for(int i=0;i<size;i++){
            double y2=Math.round(Pn_points.get(i)/1000*100.0)/100.0;
            double x2=Math.round(Mn_points.get(i)/100000*100.0)/100.0;
            double y3=Math.round(Pn_points_ABA.get(i)/1000*100.0)/100.0;
            double x3=Math.round(Mn_points_ABA.get(i)/100000*100.0)/100.0;
            float y=(float)y2 ;
            float x=(float)x2 ;
            float y_ABA=(float)y3 ;
            float x_ABA=(float)x3 ;
            yVals.add(new Entry(i,y));
            xVals.add(new Entry(i,x));
            yVals_ABA.add(new Entry(i,y_ABA));
            xVals_ABA.add(new Entry(i,x_ABA));
        }
        ArrayList  lines = new ArrayList  ();
        LineDataSet sety=new LineDataSet(yVals,"yData");
        LineDataSet sety_ABA=new LineDataSet(yVals_ABA,"yData_ABA");
        lines.add(sety);
        lines.add(sety_ABA);
        LineData plotData = new LineData(lines);
        lineChart.setData(plotData);

1 个答案:

答案 0 :(得分:0)

由于声誉较低,我无法发表评论。因此我发帖回答。

我认为这就是你要找的东西:

LineDataSet sety=new LineDataSet(yVals,"yData");
LineDataSet sety_ABA=new LineDataSet(yVals_ABA,"yData_ABA");
LineData plotData=new LineData(sety);
plotData.addDataSet(sety_ABA);
lineChart.setData(plotData);

如果它有帮助,不要忘记upvote;)。谢谢!!