我在使用RadarChart标签时遇到了一些问题。具体来说,如果我使用长文本(例如15-20个字符),并且可用空间不太大,则图表会折叠起来,并且标签会位于折叠后的图表内(但显然有更多可用空间)。

我尝试使用ValueFormatter作为标签轴,如果标签长度超过5个字符,则会将其截断,但是正如我所看到的,图表大小的计算是基于完整的标签文本,因为图表按照我之前描述的方式折叠。

XAxis xAxis = radarChart.getXAxis();
xAxis.setValueFormatter(new XAxisValueFormatter() {
    @Override
    public String getXValue(String original, int index, ViewPortHandler viewPortHandler) {
        return original.length() > 5 ? original.substring(0, 5) + "…" : original;
    }
});

这是一些图片以阐明问题。图表显示在CardView内,如您所见,在所有面上都留有足够的空间。前两张照片是使用ValueFormatter设置拍摄的,后两张照片没有ojit_code设置。

android - MPAndroidChart RadarChart自身崩溃-LMLPHP

android - MPAndroidChart RadarChart自身崩溃-LMLPHP

android - MPAndroidChart RadarChart自身崩溃-LMLPHP

android - MPAndroidChart RadarChart自身崩溃-LMLPHP

最佳答案

可能您有一些错误,这里有一些解决方案:

1)在设置了RadarChart参数之后设置雷达数据,然后调用invalidate()

2)在AxisMinimumAxisMaximum中设置radarChart.getXAxis()radarChart.getYAxis()
3)在步骤2之后调用yAxis.calculate(min,max)

4)如果需要,请使用radarChart.setExtraOffsets(?,?,?,?)
我正在使用com.github.PhilJay:MPAndroidChart:v3.0.1

关于android - MPAndroidChart RadarChart自身崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37112855/

10-10 09:27