问题
Does anyone know how to create a doughnut chart similar to the one in Google Fit. Is there a library for this?
回答1:
I also wanted this, but the best answer i could find was "make your own". So I did.
This is pretty basic (I'm new to android) and unfinished, but it should give you the idea.
Basically, you just set up your paint objects
paintPrimary = new Paint();
paintPrimary.setAntiAlias(true);
paintPrimary.setColor(colorPrimary);
paintPrimary.setStyle(Paint.Style.STROKE);
paintPrimary.setStrokeCap(Paint.Cap.ROUND);
and call canvas.drawArc
class FitDoughnutView extends View {
private RectF _oval;
public FitDoughnutView(Context ctx) {
super(ctx);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawArc(_oval, 0, 360, false, paintSecondary);
canvas.drawArc(_oval, 270, percentDeg, false, paintPrimary);
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
_oval = new RectF(width, width, w - width, h - width);
}
}
Full source here: github.com/tehmantra/fitdoughnut
Someone's tutorial: hmkcode.com/android-canvas-how-to-draw-2d-donut-chart/
回答2:
I found this: https://github.com/txusballesteros/fit-chart
I hope this helps someone with the same problem.
来源:https://stackoverflow.com/questions/29281238/create-doughnut-chart-similar-to-google-fit