AAChartCore-Kotlin icon indicating copy to clipboard operation
AAChartCore-Kotlin copied to clipboard

Is it possible to customize x-axis values in LineChart?

Open amanzan opened this issue 3 years ago β€’ 1 comments

In the sample app, LineChart is configured in this way, without apparently configuring x-axis values:

        val aaChartModel = AAChartModel.Builder(this)
            .setChartType(chartTypeEnum)
            .setBackgroundColor("#4b2b7f")
            .setDataLabelsEnabled(false)
            .setYAxisGridLineWidth(0f)
            .setLegendEnabled(false)
            .setTouchEventEnabled(true)
            .setSeries(
                AASeriesElement()
                    .name("Tokyo")
                    .data(arrayOf(7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6)),
                AASeriesElement()
                    .name("NewYork")
                    .data(arrayOf(0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5)),
                AASeriesElement()
                    .name("London")
                    .data(arrayOf(0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0)),
                AASeriesElement()
                    .name("Berlin")
                    .data(arrayOf(3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8))
            )
            .build()

Considering I want to display in the LineChart an array of objects, where an object has x and y coordinates, how would I pass that to .data? To try to explain it better, this is what I would like to represent:

val aaChartModel = AAChartModel.Builder(this)
            .setChartType(chartTypeEnum)
            .setBackgroundColor("#4b2b7f")
            .setDataLabelsEnabled(false)
            .setYAxisGridLineWidth(0f)
            .setLegendEnabled(false)
            .setTouchEventEnabled(true)
            .setSeries(
                AASeriesElement()
                    .name("Tokyo")
                    .data(arrayOf({"x": 2.5, "y": 7.2}, {"x": 7.9, "y": 5.1},{"x": 13.2, "y": 7.2})),            )
            .build()

amanzan avatar Feb 23 '22 17:02 amanzan

Try this:

val aaChartModel = AAChartModel.Builder(this)
    .setChartType(chartTypeEnum)
    .setBackgroundColor("#4b2b7f")
    .setDataLabelsEnabled(false)
    .setYAxisGridLineWidth(0f)
    .setLegendEnabled(false)
    .setTouchEventEnabled(true)
    .setSeries(
        AASeriesElement()
            .name("Tokyo")
            .data(
                arrayOf(
                    arrayOf(2.5, 7.2),
                    arrayOf(7.9, 5.1),
                    arrayOf(13.2, 7.2),
                )
            )
    ).build()

edwardzjl avatar Jul 06 '22 07:07 edwardzjl