你好,我是安卓新手。我现在正在使用 achartengine 开发应用程序来绘制图表〜现在我有问题,折线图上的某些点必须改变颜色,而不是在线和线上的所有点。
我认为它应该是扩展父类(GraphicalView),但这种方式让我抓狂~现在我问有经验的android开发者。
请帮帮我~
你好,我是安卓新手。我现在正在使用 achartengine 开发应用程序来绘制图表〜现在我有问题,折线图上的某些点必须改变颜色,而不是在线和线上的所有点。
我认为它应该是扩展父类(GraphicalView),但这种方式让我抓狂~现在我问有经验的android开发者。
请帮帮我~
Okz 我正在使用AChart
库,它是完全可定制的,您可以更改图表中任何事物的颜色,例如,如果您使用它的示例AverageTemperatureChart
,您将看到一个对象渲染器,其中包含属性如何渲染图表有几种设置属性方法,例如setTitle
setTitleColor
等你可以使用它
如果我理解正确,您希望图形线的一些点和线的一部分改变颜色。我能想到的最简单的方法是在现有线的顶部用不同的颜色绘制另一条线和/或一组点。这样做的代码是:
// your existing chartView, dataset, and renderer
GraphicalView mChartView;
XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset();
XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer(2);
// new series, to plot it with different color
XYSeries newXYSeries = new XYSeries("");
XYSeriesRenderer newXYSeriesRenderer = new XYSeriesRenderer();
newXYSeries.add(0, 0); // add the points you want the color to be different
newXYSeriesRenderer.setColor(Color.BLACK); // set color
mRenderer.addSeriesRenderer(newXYSeriesRenderer);
mDataset.addSeries(newXYSeries);
// you might want to set the range to make sure that the lines are plotted on top of each other
// not sure if it is necessary
mRenderer.setRange(new double[] { MIN_X, MAX_X, MIN_Y, MA_Y });
我想就是这样。您需要将希望颜色不同的所有点添加到 newXYSeries 中。