MPAndroidChart:X轴数值与数据数值不对应

5
我有一个使用MPAndroidChart的问题:我有一些条形图中要显示的条目数据,但x轴标签没有显示在我想要的位置上:我想要将它们一个接一个地显示在每个条形图值下方。

这是当前发生的情况:

enter image description here

这是我的代码:

    ArrayList<BarEntry> entries1 = my entries...;
    final ArrayList<String> stringList1 = my strings...;

    XAxis xAxis1 = chartCost.getXAxis();
    xAxis1.setPosition(XAxis.XAxisPosition.BOTTOM);
    xAxis1.setDrawGridLines(false);
    xAxis1.setCenterAxisLabels(true);
    /*
    xAxis1.setValueFormatter(new IAxisValueFormatter() {
        @Override
        public String getFormattedValue(float value, AxisBase axis) {
            return stringList1.get((int)value);
        }
    });
    */

    BarDataSet set = new BarDataSet(entries1, "myData");
    BarData data = new BarData(set);
    chartCost.setData(data);
    chartCost.setFitBars(true);
    chartCost.invalidate();

entries1和stringList1被正确地填充了。这是一个例子:

- x: 0, y: 22,90
- x: 1, y: 21,53
- x: 2, y: 18,49

如果我取消IAxisValueFormatter的注释,浮点值将与我的条目的x值不对应,但是,正如您所看到的那样,它们都是小数值!
我想要得到这个(在柱形下方放置标签): enter image description here 但我该怎么做呢? 谢谢!
1个回答

6
在您的代码中包含以下行:
xAxis1.setCenterAxisLabels(false);
xAxis1.setGranularity(1f);

setCenterAxisLabels,其默认值为false,因此不是强制性的。如果您已将其设置为true,请将其更改为false。否则,您的条形图将位于连续的x值之间。


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