Graph3.kt

@Composable
fun Graph3() {
    Graph3Bar()
}

@Composable
fun Graph3Bar(){

    val varDataList = listOf(10,5,8,4,7,6,1,7,3)
    BarChart(varDataList)

}

@Composable
fun BarChart(varDataList: List<Int>) {

    val maxDataValue = varDataList.max()

    Box(
        modifier = Modifier.fillMaxWidth().padding(top = 150.dp)
    ) {

        Row(
            modifier = Modifier.fillMaxWidth(),
            verticalAlignment = Alignment.Bottom,
            horizontalArrangement = Arrangement.SpaceEvenly
        ){
            varDataList.forEach {barData ->
                Bar(barData, maxDataValue)
            }
        }

    }

}

@Composable
fun Bar(barData: Int, maxDataValue: Int) {

    val height = (barData.toFloat() / maxDataValue) * 300

    Box(
        modifier = Modifier
            .height(height.dp)
            .width(30.dp)
            .background(Color.Black),
        contentAlignment = Alignment.BottomCenter
    ){
        Text(
            text = barData.toString(),
            color = Color.White
        )
    }

}

@Preview(showBackground = true)
@Composable
fun Graph3Preview() {
    DefaultTheme {
        Graph3()
    }
}