MPChart 中饼图周围的边框

Hei*_*erg 3 android mpandroidchart

有没有办法为饼图添加笔划?我想在我的所有切片上进行描边,不仅是外部,还包括内部。我在图书馆没有看到任何方法。任何帮助,将不胜感激。

Hei*_*erg 5

我认为库中没有用于此目的的 API。所以我最终修改了库。我使用 Style.STROKE 为 PieChart 的每个切片创建了一个绘制对象,并将其绘制在每个切片路径上。因此,在PieChartRenderer.drawDataSet()类之后:

mBitmapCanvas.drawPath(mPathBuffer, mRenderPaint);
Run Code Online (Sandbox Code Playgroud)

我添加了以下代码行:

Paint strokePaint = new Paint(Paint.ANTI_ALIAS_FLAG);
strokePaint.setStyle(Style.STROKE);
strokePaint.setStrokeWidth(4);
strokePaint.setColor(Color.WHITE);
mBitmapCanvas.drawPath(mPathBuffer, strokePaint);
Run Code Online (Sandbox Code Playgroud)

为了提高效率,您还可以将StrokePaint设为PieChartRenderer的成员变量。

另外,如果您不想每个切片之间有双线,只需设置 dataSet.setSliceSpace(0f);

当然,您也可以扩展 PieChart 和 PieChartRenderer 并使用 CustomPieChart 创建饼图,这样您就不必修改库。