我正在使用Achartengine进行LineChart。我已经为XYSeriesRenderer对象添加了线条颜色。我从库中获取动态值来绘制图表。如果x值达到最大值,我需要更改折线图的颜色。我只使用一个系列。我试过了,我无法做到。有没有办法动态改变线条颜色?
答案 0 :(得分:1)
// Declaring and instantiating objects:
XYMultipleSeriesRenderer mTimeRenderer = new XYMultipleSeriesRenderer();
XYSeriesRenderer mCurrentRenderer = new XYSeriesRenderer();
// Defining XYRenderer properties
mCurrentRenderer.setColor(Color.CYAN);
// Associating XYRenderer to the XYMultipleSeriesRenderer
mTimeRenderer.addSeriesRenderer(mCurrentRenderer);
//{...}
// You could get your XYRenderer later on with:
mCurrentRenderer = mTimeRenderer.getSeriesRendererAt(0);
当然,您可以动态重绘图表并随时更改渲染器属性。
<强>解释强>
XYSeriesRenderer
个对象用作XYRenderer
个容器。
设置线条颜色的方式是使用XYRenderer.setColor(int color)
方法。
您可能会让当前的渲染器在getSeriesRendererAt(int index)
上调用XYSeriesRenderer
,或者您可能已经有XYRenderer
个对象与之互动。
答案 1 :(得分:0)
只需改变颜色:
renderer.setColor(newColor);
然后重新绘制图表:
chartView.repaint();