Graph2.kt

@Composable
fun Graph2() {
    
    Box(
        modifier = Modifier.padding(top = 120.dp)
    ) {
        Graph2Pie()
    }

}

@Composable
fun Graph2Pie() {

    val pieSize1 = 25f
    val pieSize2 = 75f

    val colorList = listOf(Color.Red, Color.Blue)

    PieChart(
        pieSize1,
        pieSize2,
        colorList
    )

}

@Composable
fun PieChart(
    pieSize1 : Float,
    pieSize2 : Float,
    colorList : List<Color>
){

    val totalSize = pieSize1 + pieSize2

    BoxWithConstraints(
        modifier = Modifier.padding(20.dp)
    ) {

        val pieDetailSize = constraints.maxWidth.toFloat()

        Canvas(modifier = Modifier.size(pieDetailSize.dp)){

            val sweep1 = 360 * (pieSize1 / totalSize)

            drawArc(
                color = colorList[0],
                startAngle = 0f,
                sweepAngle = sweep1,
                useCenter = true,
                size = Size(pieDetailSize,pieDetailSize)
            )

            val sweep2 = 360 * (pieSize2 / totalSize)

            drawArc(
                color = colorList[1],
                startAngle = sweep1,
                sweepAngle = sweep2,
                useCenter = true,
                size = Size(pieDetailSize,pieDetailSize)
            )

        }

    }

}

@Preview(showBackground = true)
@Composable
fun Graph2Preview() {
    DefaultTheme {
        Graph2()
    }
}