我正在为 LineChart 使用 Achartengine。我已经为 XYSeriesRenderer 对象添加了线条颜色。我从库中获取动态值来绘制图表。如果 x 值达到最大值,我需要更改折线图的颜色。我只使用一个系列。我试过了,但我做不到。有没有办法动态改变线条颜色?
问问题
2318 次
2 回答
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
要与之交互的对象。
于 2014-02-26T22:14:57.027 回答
0
只需以这种方式更改颜色:
renderer.setColor(newColor);
然后重新绘制图表:
chartView.repaint();
于 2013-09-01T11:59:40.863 回答