AndroidPlot:添加和删除XYSeries

时间:2013-05-21 20:07:24

标签: java android graph androidplot

我遇到了这个实现的问题:

       if(blueActive) {
            blueFormat = new LineAndPointFormatter(Color.rgb(0,0,255), null, null);
            blue = new SimpleXYSeries(xArray,yArray, selectedDate);
            Log.e(TAG , "blueActive");
            cvPlot.addSeries(blue, blueFormat);
        }
        if(redActive) {
            redFormat = new LineAndPointFormatter(Color.rgb(255,0,0), null, null);
            red = new SimpleXYSeries(xArray,yArray, selectedDate);
            Log.e(TAG , "redActive");
            cvPlot.addSeries(red, redFormat);
        }
        if(greenActive) {
            greenFormat = new LineAndPointFormatter(Color.rgb(0,255,0), null, null);
            green = new SimpleXYSeries(xArray,yArray, selectedDate);
            Log.e(TAG , "greenActive");
            cvPlot.addSeries(green, greenFormat);
        }

        cvPlot.redraw();

使用正确的xArray和yArray绘制系列,但是当重绘图形时,所有绘图都是相同的颜色。我正在寻找这个代码用三种不同的颜色重绘图。我在这里做了一些逻辑错误吗?

1 个答案:

答案 0 :(得分:0)

虽然这个问题与其他代码没有很大的描述性,但最终的答案是将其添加到onClick中,开始添加图表的过程:

  

xArray.clear();   yArray.clear();

线条重叠,当添加下一个颜色时,由于在蓝色之后选择了红色图形,因此两个阵列增长到包括蓝色和红色的点,使得它看起来颜色没有变化。换句话说,红色阵列包括蓝色阵列,由于这些点与蓝色图相同,我看不到蓝色图,因为红色图是在顶部!

我已经在这个问题出现之前设置了一个Log.d,但实际上并没有注意到数组加倍,因为我没有记录计数,因为我只想看到x和y值正在填充。

记录您的阵列计数并清除阵列rook dawg !!