在饼图中隐藏小值MPAndroidChart

如果在图形外打印小值,如何在PieChart中隐藏小值?我可以使用ValueFormatter来使标签为空,但是我不明白如何删除图表外的线。

这是我目前的情况(没有使用Value Formatter隐藏小值):current graph

ABC402543999 回答:在饼图中隐藏小值MPAndroidChart

此链接可能有用: https://stackoverflow.com/a/46403088/5482918

需要更改drawValues类中的方法PieChartRenderer

添加数据时:

 ArrayList<PieEntry> entries = new ArrayList<>();
    entries.add(new PieEntry(75,"Data 1","showLine"));
    entries.add(new PieEntry(25,"Data 2","hideLine"));
    entries.add(new PieEntry(45,"Data 3","hideLine"));
    entries.add(new PieEntry(58,"Data 4","showLine"));
    entries.add(new PieEntry(76,"Data 5","hideLine"));

PieChartRenderer类-drawValues(Canvas c)方法:条件如下:

if (entry.getData().equals("showLine")) {
                    if (dataSet.getValueLineColor() != ColorTemplate.COLOR_NONE) {
                        if (dataSet.isUsingSliceColorAsValueLineColor()) {
                            mValueLinePaint.setColor(dataSet.getColor(j));
                        }
                        c.drawLine(pt0x,pt0y,pt1x,pt1y,mValueLinePaint);
                        c.drawLine(pt1x,pt2x,pt2y,mValueLinePaint);
                    }
                }
,

尝试 dataSet.setDrawValues(false)。这样可以避免绘制任何值。

如果要更改(自定义)绘制的值(或仅更改单个值),可以使用ValueFormatter接口并实现自己的逻辑(例如,根据条件隐藏特定值)。使用ValueFormatter时,请始终牢记性能至关重要。

本文链接:https://www.f2er.com/3157335.html

大家都在问