我正在使用MPAndroidchart绘制实时线图。我有一秒钟内有240个值可以绘制。但绘图速度太慢,绘制一秒钟的数据需要5秒以上。如何在一秒钟内绘制1秒数据?
private void addEntryGraph1() {
LineData data = graph1.getLineData();
if (data != null) {
ILineDataSet set = data.getDataSetByIndex(0);
if (set == null) {
set = createSet();
data.addDataSet(set);
}
data.addXValue(new SimpleDateFormat("HH:mm:ss")
.format(new Date(System.currentTimeMillis())));
for (int i = 0; i < sampleRatio; i++)
data.addEntry(new Entry((float) (ch1Buffer.get(i)), set.getEntryCount()), 0);
graph1.notifyDataSetChanged();
graph1.setVisibleXRange(240, 240);
graph1.moveViewToX(0);
synchronized (ch1Buffer) {
ch1Buffer.subList(0, sampleRatio).clear();
}
}
}
答案 0 :(得分:0)
该库不可用于实时绘制大量数据。 Philipp Jahoda确认。
请在github中找到答案 https://github.com/PhilJay/MPAndroidChart/issues/1676