Professional Documents
Culture Documents
FL Bar Chart Screen - Dart
FL Bar Chart Screen - Dart
dart';
import 'package:fl_chart/fl_chart.dart';
import 'data_model.dart';
@override
void initState() {
super.initState();
_list.add(DataModel(key: "0", value: "2"));
_list.add(DataModel(key: "1", value: "4"));
_list.add(DataModel(key: "2", value: "6"));
_list.add(DataModel(key: "3", value: "8"));
_list.add(DataModel(key: "4", value: "10"));
_list.add(DataModel(key: "5", value: "8"));
_list.add(DataModel(key: "6", value: "4"));
}
@override
Widget build(BuildContext context) {
return Container(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
Expanded(child: Container(
color: Colors.white,
height: 100,
width: 200,
),
flex: 2),
Expanded(child: Container(
color: Colors.white,
height: 100,
width: 200,
child: BarChart(
BarChartData(
backgroundColor: Colors.white,
barGroups: _chartGroups(),
borderData: FlBorderData(
border: const Border(bottom: BorderSide(), left:
BorderSide())),
gridData: FlGridData(show: false),
titlesData: FlTitlesData(
bottomTitles: AxisTitles(sideTitles: _bottomTitles),
leftTitles: AxisTitles(
sideTitles: SideTitles(
showTitles: true,
interval: 1,
getTitlesWidget: (value, meta) {
return Text(
value.toString(),
style: const TextStyle(fontSize: 10),
);
},
)),
topTitles: AxisTitles(sideTitles: SideTitles(showTitles: false)),
rightTitles: AxisTitles(sideTitles: SideTitles(showTitles:
false)),
),
),
),
),
flex: 2),
],
),
);
}
List<BarChartGroupData> _chartGroups() {
List<BarChartGroupData> list =
List<BarChartGroupData>.empty(growable: true);
for (int i = 0; i < _list.length; i++) {
list.add(BarChartGroupData(x: i, barRods: [
BarChartRodData(
toY: double.parse(_list[i].value!), color: Colors.deepOrange)
]));
}
return list;
}
DataModel({this.key, this.value});