AChartEngine 最大 x 轴标签可见性。

3
我的问题是如何在AChartEngine中设置许多x轴标签,并仅对例如20个标签进行可见性设置,当缩放时会出现更精确的标签。
1个回答

2

一开始,只需为初始视图设置所需的最大标签数:

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);

它适用于数字标签,但不幸的是不适用于文本标签 :( - Mathew1990
我会尝试,这可能解决我的问题:),你的代码有一个小错误,我认为应该是“double step = (stop-start)/20;”而不是“double step = (start - stop) / 20;”。无论如何,非常感谢您的帮助!:) - Mathew1990
嗨,丹,这里的mCharview是什么? - u_pendra
一个GraphicalView的实例。 - Dan D.
嘿,丹,renderer.removeXTextLabels();它在编译时出现错误... renderer.removeXTextLabels(X);那我要用什么替换x? - Ekanta Swain
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接