我正在使用 MPAndroidchart,我想在实时检测到波谷时绘制一个红点。
我用
set.getEntryForIndex(set.getEntryCount()-1).setIcon(ContextCompat.getDrawable(this, R.drawable.red_dot));
Run Code Online (Sandbox Code Playgroud)
如果我设置chart.setVisibleXRangeMaximum(90),就可以了,但是如果我设置XRangeMaximum大于大约100,如果我不使用手指放大,红点就会消失。
当我放大时,我可以看到那些红点
当 XRangeMaximum 大于 100 且无需放大时,是否有任何解决方案可以保持红点可见,因为我想在该图表中显示大约 300 个数据。
private void addEntry(double Pulse_Signal){
LineData data = chart.getData();
if (data != null) {
ILineDataSet set = data.getDataSetByIndex(0);
// set.addEntry(...); // can be called as well
if (set == null) {
set = createSet(false);
data.addDataSet(set);
}
if(DrawCircleFlag){
set.getEntryForIndex(set.getEntryCount()-1).setIcon(ContextCompat.getDrawable(this, R.drawable.red_dot));
}
else {
data.addEntry(new Entry(set.getEntryCount(), (float) Pulse_Signal), 0);
}
data.notifyDataChanged();
chart.notifyDataSetChanged();
chart.setVisibleXRangeMaximum(260);
chart.moveViewToX(data.getEntryCount());
}
}
Run Code Online (Sandbox Code Playgroud)
XRangeMaximum 90 像这样

XRangeMaximum 260 像这样

当我用手指放大时,XRangeMaximum 260
