Android - GraphView resetData - PullRequest
       12

Android - GraphView resetData

0 голосов
/ 17 мая 2018

Для проекта мне нужно измерить уровень звука.Мое приложение работает отлично, и оно рисует график уровня звука, который я измеряю.Но по какой-то причине я не могу сбросить свои данные grapview.

Я не могу поместить весь свой код здесь из-за ограничений в стеке потока.

определение графа

Я определяю график наCreate

GraphView graph = (GraphView) findViewById(R.id.graph);
    // data
    series = new LineGraphSeries<DataPoint>();
    graph.addSeries(series);
    series.setThickness(2);
    // customize a little bit viewport
    Viewport viewport = graph.getViewport();
    viewport.setYAxisBoundsManual(true);
    viewport.setXAxisBoundsManual(true);
    viewport.setMinY(0);
    viewport.setMaxY(25000);
    viewport.setMinX(0);
    viewport.setMaxX(5000);
    viewport.setScrollable(true);
        final LineGraphSeries<DataPoint> series = new LineGraphSeries<>(new DataPoint[] {
            new DataPoint(0, 0)
    });
    graph.addSeries(series);

addEntry

я использую это, чтобы добавить новую точку данных в моей серии:

private void addEntry(int a, int b) {
    series.appendData(new DataPoint(a, b), true, 50000);
}

resetData

специальная кнопка для сброса данных в серии (позже я заменюэта кнопка с чем-то еще)

buttonUpdate.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        series.resetData(new DataPoint[] {});
    }
});

Я также пытался

buttonUpdate.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        series.resetData(new DataPoint[] {new DataPoint(0, 0)});
    }
});

ошибка

Но по какой-то причине я даже после многократного нажатия кнопки я все еще получаю'java.lang.IllegalArgumentException: новое значение x должно быть больше, чем последнее значение.Х-значения должны быть заказаны в ASC. 'ошибка

'java.lang.IllegalArgumentException: new x-value must be greater then the last value. x-values has to be ordered in ASC.'
...