How can i avoid overlapping of the x-axis data and the overlapping tooltip values, i tried reducing the font but that didnt work.For tooltip i wanted to show only maximum value,and other values only when the user clicks on it. BarChart( BarChartData( barTouchData: barTouchData, titlesData: titlesData, borderData: borderData, barGroups: barGroups, gridData: FlGridData(show: false), alignment: BarChartAlignment.spaceAround, minY: 0, maxY: double.parse((y! + 1000).toString()),
//double.parse(widget.total.toString()),
),
);
}
BarTouchData get barTouchData => BarTouchData(
enabled: true,
touchTooltipData: BarTouchTooltipData(
tooltipBgColor: Colors.transparent,
tooltipPadding: EdgeInsets.zero,
tooltipMargin: 5,
getTooltipItem: (
BarChartGroupData group,
int groupIndex,
BarChartRodData rod,
int rodIndex,
) {
return BarTooltipItem(
rod.toY.round().toString(),
const TextStyle(
fontSize: 10,
color: Colors.white,
// fontWeight: FontWeight.bold,
),
);
},
),
);
FlTitlesData get titlesData => FlTitlesData(
show: true,
bottomTitles: AxisTitles(
sideTitles: SideTitles(
// rotateAngle: 90,
showTitles: true,
reservedSize: 30,
// getTitlesWidget: getTitles,
),
),
leftTitles: AxisTitles(
sideTitles: SideTitles(showTitles: false, reservedSize: 30),
),
topTitles: AxisTitles(
sideTitles: SideTitles(
showTitles: false,
),
),
rightTitles: AxisTitles(
sideTitles: SideTitles(showTitles: false),
),
);
FlBorderData get borderData => FlBorderData(
show: true,
border: Border.all(color: Color.fromARGB(255, 207, 182, 168), width: 1),
);
LinearGradient get _barsGradient => const LinearGradient(
colors: [
Colors.lightBlueAccent,
Colors.greenAccent,
],
begin: Alignment.bottomCenter,
end: Alignment.topCenter,
);
List<BarChartGroupData> get barGroups =>
List.generate(widget.data.length, (index) {
//return Text(text[index].toString());
// for ( var i in widget.data ) Text(i.toString())
return BarChartGroupData(
x: index + 1,
barRods: [
BarChartRodData(
toY: widget.data[index].toDouble(),
gradient: _barsGradient,
)
],
showingTooltipIndicators: [0],
);
});
}