如何使用mpchart库在x轴上显示值?

时间:2018-06-14 06:46:57

标签: java android linechart

我的值为integerdate,但不知道哪里在Android中使用它们。

因此,当我放大值保持在同一位置和值之间时,会有一个空白区域。

我想在图表上显示它们之间的值,如[1 2 3],仅显示值1,2,3但不显示为1,1.1,1.2,1.3 ... 2.8 2.9(放大时)? / p>

final ArrayList<String> xLabel = new ArrayList<>();
    xLabel.add("1");
    xLabel.add("2");
    xLabel.add("3");
    xLabel.add("4");
    xLabel.add("5");
    xLabel.add("6");
XAxis xAxis = line.getXAxis();
    xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
    xAxis.setDrawGridLines(false);
    xAxis.setGranularity(1f); // only intervals of 1 day
    xAxis.setValueFormatter(xAxisFormatter);
    xAxis.setValueFormatter(new IAxisValueFormatter() {
        @Override
        public String getFormattedValue(float value, AxisBase axis) {
            return xLabel.get((int)value);
        }
    });

2 个答案:

答案 0 :(得分:0)

启用粒度并为其添加间隔,如

XAxis xAxis = mBarChart.getAxisLeft();
xAxis.setGranularity(0.1f);
xAxis.setGranularityEnabled(true);

在您的情况下,间隔为0.1

答案 1 :(得分:0)

将xAxis粒度设置为1:

private void setXAxisGranularity(Chart chart)
{
    XAxis xAxis = chart.getXAxis();
    xAxis.setGranularityEnabled(true);
    xAxis.setGranularity(1f);
}