【问题标题】:MpAndroidChart zoom String value errorMpAndroidChart 缩放字符串值错误
【发布时间】:2016-12-24 05:06:58
【问题描述】:

我正在使用 MpAndroidChart,它运行良好,除了一个问题。当我放大图形的特定区域时,X 值以聚集的方式出现多次。我覆盖了X axis setValueFormatter(下面的代码以及一些图片)以显示从输入数据返回的日期。有没有人遇到过这种情况,如果有,你知道原因吗?我正在考虑禁用可缩放选项,但我更愿意拥有它。谢谢!

bottomAxis.setValueFormatter(new AxisValueFormatter() {
        @Override
        public String getFormattedValue(float value, AxisBase axis) {
            // return values will all be the values of the dates array
            int value_i = (int) value;
            if (value_i % 2 == 0 && (value_i / 2) <= epochs.length && value_i >= 2) {
                Calendar calendar = Calendar.getInstance();
                calendar.setTimeInMillis(eu.getDailyInfo().getEpochValues()[(value_i/2)-1]);
                return (assignMonth(calendar.get(Calendar.MONTH)) + "" + String.valueOf(calendar.get(Calendar.DAY_OF_MONTH)));
            } else {
                return "";
            }
        }

        @Override
        public int getDecimalDigits() {
            return 0;
        }
    });

【问题讨论】:

  • 您可以尝试添加bottomAxis.setGranularity(1f); bottomAxis.setGranularityEnabled(true); 以在缩放时删除多余的标签。

标签: android zooming mpandroidchart


【解决方案1】:

如果您想删除多余的标签,您可以使用粒度功能。例如,如果您的条形图是基于索引的,那么以下应该可以工作:

bottomAxis = mBarChart.getXAxis();
bottomAxis.setGranularity(1f);
bottomAxis.setGranularityEnabled(true);

注意:当使用 LabelFormatter 或此库的新版本 3.0.0 中的类似名称时,这对于删除重复标签特别有用。

另外,请参阅this answer,了解有关粒度功能的更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 2016-07-01
    • 2015-05-31
    相关资源
    最近更新 更多