【发布时间】:2012-10-26 07:48:34
【问题描述】:
我的问题是如何在 AChartEngine 中在 x 轴上设置大量 x 标签,并设置为仅对例如 20 可见,当放大时会出现更精确的标签。
【问题讨论】:
标签: android mobile charts achartengine
我的问题是如何在 AChartEngine 中在 x 轴上设置大量 x 标签,并设置为仅对例如 20 可见,当放大时会出现更精确的标签。
【问题讨论】:
标签: android mobile charts achartengine
一开始,只需为初始视图设置所需的最大标签数:
renderer.setXLabels(20);
无论何时放大,AChartEngine 都会更新标签,使其最多包含 20 个标签。它会自动选择圆形值标签,因此您不会正好有 20 个,但您会有相当数量的相当整数。
另一方面,如果您指的是自定义文本标签,例如使用 renderer.setXTextLabel() 添加的标签,那么您必须监听缩放事件并相应地更新标签:
mChartView.addZoomListener(new ZoomListener() {
public void zoomApplied(ZoomEvent e) {
double start = renderer.getXAxisMin();
double stop = renderer.getXAxisMax();
double step = (stop - start) / 20;
renderer.removeXTextLabels();
for (double i = start; i <= stop; i += step) {
renderer.addXTextLabel(i, "text");
}
}
public void zoomReset() {
}
}, true, true);
【讨论】: