I am using syncfusion_flutter_charts library 20.4.51 to make charts. My problem is that when the dataChart is repeated, its column is not displayed. For example, in the code below, two columns are displayed instead of three. my code:
import 'package:flutter/material.dart';
import 'package:syncfusion_flutter_charts/charts.dart';
import 'bar-chart-data.dart';
void main() {
runApp(
MaterialApp(
home: BarChartModel(
chartData: [
BarChartData(examDate: '2023/01/01', score: 100),
BarChartData(examDate: '2023/01/01', score: 100),
BarChartData(examDate: '2023/01/03', score: 80),
],
),
),
);
}
class BarChartModel extends StatefulWidget {
const BarChartModel({Key? key, required this.chartData}) : super(key: key);
final List<BarChartData> chartData;
@override
State<BarChartModel> createState() => _BarChartModelState();
}
class _BarChartModelState extends State<BarChartModel> {
late List<BarChartData> barChartData = [];
@override
void initState() {
for (int i = 0; i < widget.chartData.length; i++) {
barChartData.add(widget.chartData[i]);
}
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: const Color(0xfff5f5f5),
body: Padding(
padding: const EdgeInsets.only(top: 10, bottom: 5),
child: Center(
child: SfCartesianChart(
primaryXAxis: CategoryAxis(
arrangeByIndex: false,
),
series: <ChartSeries>[
StackedColumnSeries<BarChartData, String>(
dataSource: barChartData,
xValueMapper: (BarChartData ch, _) => ch.examDate,
yValueMapper: (BarChartData ch, _) => ch.score,
),
],
),
),
),
);
}
}
I want to show on the x-axis the dates that the user took the test, sorry, my explanation was very bad, my English is poor. :(