关于折线图标中的特殊情况
1、设置最高值/最低值
2、当只有两组数据且两组数据Y轴值相同时,折线图不显示
3、当有且只有一组数据时,折线图不显示
4、根据放大程度,自动隐藏/显示数值备注
Viewport v = new Viewport(chart_zhexian.getMaximumViewport());
if (yMax != -999999) {
v.top = yMax;
}
if (yMin != -999999) {
v.bottom = yMin;
}
if (v.top == v.bottom && v.top != 0) {//解决最大值最小值相等时,图不能展示问题
v.top = v.top * 2;
v.bottom = 0;
} else if (v.bottom == 0.0) {//解决最大值最小值相等时全部为0时,图不能展示问题
v.top = 1;
v.bottom = 0;
}
chart_zhexian.setMaximumViewport(v);
v.left = 0;
v.right = mAxisXValues.size();
chart_zhexian.setCurrentViewport(v);
chart_zhexian.moveTo(0, 0);
chart_zhexian.setInteractive(true);
chart_zhexian.setViewportChangeListener(new ViewportChangeListener() {
@Override
public void onViewportChanged(Viewport viewport) {
if (viewport.right - viewport.left < 10) {
line.setHasLabels(true);
line.setPointRadius(1);
} else {
line.setHasLabels(false);
line.setPointRadius(0);
}
}
});