AndroidPlot更改绘图中特定点的颜色

时间:2015-10-07 13:11:05

标签: android androidplot

我一直在寻找答案,但由于我找不到任何答案,我会发布问题。

我绘制了一个绘图,下面的列表显示了一些数据,每一行的参数之一在绘图中绘制。

当用户点击列表中的某个视图时,我试图更改该点的颜色,以反映该行与该点匹配的情节,但我还没有能够复制它。

有什么方法可以获得图表的特定点,改变它的颜色吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我不知道你想要做的是否可行,但你可以尝试在你的情节中添加一个系列,其中包含你想要在用户点击时突出显示的点。完成新的点击后,您只需删除添加的系列并添加一个包含新点的新系列。

添加的系列必须具有不同的风格,以便您可以看到“更改的颜色”,并且必须是最后添加的系列,因此它将处于forground状态。

希望有所帮助

修改

如何使其适应您的用例,可以扩展XYPlot类,创建SeriesType highlightedPoint属性并添加类似(未测试)的方法:

public void highlightPoint(Number x, Number y, FormatterType formatter){
    // if there is already a highlighted point we remove it (we want to highlight just one point)
    if(highlightedPoint != null) {
        removeSeries(highlightedPoint);
        highlightedPoint = null;
    }

    // we need to highlight the new point, which means adding a serie on top of the others
    highlightedPoint = new SimpleXYSeries("Highlighted Point");
    highlightedPoint.addFirst(x,y);
    addSeries(highlightedPoint, formatter);
}

每次用户点击列表时,您只需在绘图实例上调用此方法。