admin管理员组文章数量:1405393
I am using this BarChart
in flutter using fl_chart
package here is the code
class DailyUtilizationChart extends ConsumerWidget {
const DailyUtilizationChart({super.key});
@override
Widget build(context, ref) {
final parkingId = GoRouterState.of(context).pathParameters["id"];
final dailyUtilization = ref.watch(dailyUtilizationFutureProvider(parkingId));
final metricInterval = ref.watch(metricsIntervalProvider);
return dailyUtilization.when(
data: (utilization) {
final weeklyData = generateBarChartData(utilization);
return SizedBox(
height: 300,
width: 500,
child: BarChart(
BarChartData(
maxY: 100,
barGroups: weeklyData,
titlesData: FlTitlesData(
leftTitles: const AxisTitles(
sideTitles: SideTitles(showTitles: true, reservedSize: 35),
),
rightTitles: emptyAxisTitles,
topTitles: emptyAxisTitles,
bottomTitles: AxisTitles(
sideTitles: SideTitles(
showTitles: true,
getTitlesWidget: (value, _) {
if (metricInterval == MetricInterval.weekly) {
final date = utilization[value.toInt()].date;
final dayFormat = DateFormat.E();
return Text(dayFormat.format(date));
} else {
if (value % 2 != 0) return const SizedBox();
final date = utilization[value.toInt()].date;
final dayFormat = DateFormat('dd/MMM');
return Text(dayFormat.format(date));
}
},
),
),
),
borderData: FlBorderData(show: true),
gridData: const FlGridData(show: false),
),
),
);
},
error: (_, _) =>Text("Error getting utilization"),
loading: () => const Center(child: CircularProgressIndicator()),
);
}
}
generateBarChartData
function:
List<BarChartGroupData> generateBarChartData(List<DailyUtilizationModel> data) {
return List.generate(data.length, (index) {
final dayData = data[index];
return BarChartGroupData(
x: index,
groupVertically: true,
barRods: [
BarChartRodData(toY: dayData.maxUtilization, color: AppColors.success),
BarChartRodData(toY: dayData.avgUtilization, color: AppColors.primary),
BarChartRodData(toY: dayData.minUtilization, color: AppColors.alert),
],
);
});
}
this chart is taking full width and ignoring the width I am providing what is the issue with this. what I have tried so far
- wrap with
SizedBox
and provide width. - wrap with
ConstraintBox
and provide constraints. but both are ignored.
here is the snapshot
本文标签: flutterBarchart is taking full Width How to restrict BarChart width in flchartStack Overflow
版权声明:本文标题:flutter - Barchart is taking full Width. How to restrict BarChart width in fl_chart? - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1744258319a2597586.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论