@@ -78,18 +78,18 @@ fun LineChart(modifier: Modifier, lineChartData: LineChartData) {
7878 var tapOffset by remember { mutableStateOf(Offset (0f , 0f )) }
7979 var selectionTextVisibility by remember { mutableStateOf(false ) }
8080 var identifiedPoint by remember { mutableStateOf(Point (0f , 0f )) }
81- val line = linePlotData.lines.first()
8281 // Update must required values
83- val xAxisData = xAxisData.copy(axisBottomPadding = bottomPadding)
82+ val linePoints: List <Point > = linePlotData.lines.flatMap { line -> line.dataPoints.map { it } }
83+
84+ val (xMin, xMax, xAxisScale) = getXAxisScale(linePoints, xAxisData.steps)
85+ val (yMin, _, yAxisScale) = getYAxisScale(linePoints, yAxisData.steps)
86+ val maxElementInYAxis = getMaxElementInYAxis(yAxisScale, yAxisData.steps)
87+ val xAxisData = xAxisData.copy(axisBottomPadding = bottomPadding)
8488 val yAxisData = yAxisData.copy(
8589 axisBottomPadding = LocalDensity .current.run { rowHeight.toDp() },
8690 axisTopPadding = paddingTop
8791 )
8892
89- val (xMin, xMax, xAxisScale) = getXAxisScale(line.dataPoints, xAxisData.steps)
90- val (yMin, _, yAxisScale) = getYAxisScale(line.dataPoints, yAxisData.steps)
91- val maxElementInYAxis = getMaxElementInYAxis(yAxisScale, yAxisData.steps)
92-
9393 ScrollableCanvasContainer (modifier = modifier
9494 .semantics {
9595 contentDescription = lineChartData.accessibilityConfig.chartDescription
@@ -141,9 +141,10 @@ fun LineChart(modifier: Modifier, lineChartData: LineChartData) {
141141 xStart = columnWidth,
142142 scrollOffset = scrollOffset,
143143 zoomScale = xZoom,
144- chartData = line.dataPoints )
144+ chartData = linePoints )
145145 },
146146 onDraw = { scrollOffset, xZoom ->
147+ linePlotData.lines.forEach { line->
147148 val yBottom = size.height - rowHeight
148149 val yOffset = ((yBottom - paddingTop.toPx()) / maxElementInYAxis)
149150 xOffset = xAxisData.axisStepSize.toPx() * xZoom
@@ -212,6 +213,7 @@ fun LineChart(modifier: Modifier, lineChartData: LineChartData) {
212213 line.selectionHighlightPoint
213214 )
214215 }
216+ }
215217 },
216218 onPointClicked = { offset: Offset , _: Float ->
217219 isTapped = true
@@ -226,6 +228,7 @@ fun LineChart(modifier: Modifier, lineChartData: LineChartData) {
226228 isTapped = false
227229 selectionTextVisibility = false
228230 })
231+
229232 }
230233 if (isTalkBackEnabled) {
231234 with (lineChartData) {
0 commit comments