Я не могу успешно показать график с более чем 200 точками, используя androidPlot.
Я заполняю график androidPlot XYSeries данными, полученными из текстового файла.Файл содержит строки значений с плавающей запятой («0,00001»), которые мне нужно построить на графике.Мой код строит график, когда в текстовом файле содержится менее 300 строк, но он не работает, когда я пытаюсь создать график с более чем 300 строками.
Я пробовал это:
private void graph() {
XYSeries series1 = new SimpleXYSeries(Arrays.asList(seriesOfNumbers), SimpleXYSeries.ArrayFormat.Y_VALS_ONLY,mFilename);
mFormat = new LineAndPointFormatter(Color.RED, Color.TRANSPARENT, Color.WHITE, null);
mFormat.setInterpolationParams(new CatmullRomInterpolator.Params(20, CatmullRomInterpolator.Type.Centripetal));
gPlot.addSeries(series1, mFormat);
}
this:
protected XYSeries generateSeries(ArrayList<String> bRows) {
List<Number> xVals = new ArrayList<>();
List<Number> yVals = new ArrayList<>();
int i = 1;
for (String b : bRows) {
xVals.add(i);
yVals.add(Float.valueOf(b));
i++;
}
return new SimpleXYSeries(xVals, yVals,""+i);
}
gPlot.addSeries(generateSeries(series1), mFormat);
и this:
public void calculateGraph() {
seriesOfNumbers = new Number[mNewDataListCount];
for (int i = 0; i < mNewDataListCount; i++) {
seriesOfNumbers[i] = Double.parseDouble(mNewDataList.get(i));
}
mFormat = new LineAndPointFormatter(Color.RED, Color.TRANSPARENT, Color.WHITE, null);
mFormat.setInterpolationParams(new CatmullRomInterpolator.Params(20, CatmullRomInterpolator.Type.Centripetal));
XYSeries series1 = new SimpleXYSeries(Arrays.asList(seriesOfNumbers), SimpleXYSeries.ArrayFormat.Y_VALS_ONLY,mFilename);
gPlot.addSeries(series1, mFormat);
}
Я предполагаю, что количество точек, которые могут быть построены, замедляет производство сюжета.Может кто-нибудь показать мне, как я могу обработать 10000 строк в точках XYPlot на графике androidPlot.