首页 > 解决方案 > Mpandroidchart AxisValueFormatter:我面临 X 轴标签和标记的问题,X 轴最后一个值没有显示并且标记放错了位置

问题描述

Mpandroidchart:我面临X 轴标签和标记的问题,X 轴最后一个值没有显示并且标记放错了位置。

 chart.getXAxis().setValueFormatter(new ValueFormatter() {
            @Override
            public String getFormattedValue(float value) {
                return TimeUtils.getFormattedDateTime(dateValues.get((int) value), TimeUtils.MMM_DATE_ONLY_FORMAT);
            }
        });


  MyMarkerView mv = new MyMarkerView(this, R.layout.custom_marker_view, getString(R.string.bpm), R.drawable.marker_green);
        mv.setChartView(chart);
        chart.setMarker(mv);

我们可以从右边添加填充吗?所以标记将取代它的位置

查看附图以了解问题:- https://i.stack.imgur.com/GzqOU.png https://i.stack.imgur.com/cs7Fx.png

标签: androidgraphmpandroidchart

解决方案


在浪费了几个小时之后,终于得到了答案。我正在为遇到此问题的其他任何人发布此答案。

环境

  • chart.getXAxis().setSpaceMin(0.5f);

将在 X 轴线和图表本身之间添加空间。

  • chart.getXAxis().setSpaceMax(0.5f);

用于在图表的最后一个值和右 X 轴之间添加空间。

设置 y 轴值之间的最小间隔。当放大到为轴设置的小数位数不再允许区分两个轴值的点时,这可用于避免值重复。

  • xAxis.setGranularity(1f);

  • xAxis.setLabelCount(10);

添加以上行后,问题解决了!附上截图

https://i.stack.imgur.com/IxmWi.png


推荐阅读