import 'package:fl_chart/fl_chart.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:sefer_admin1/constant/style.dart'; import 'package:sefer_admin1/controller/admin/static_controller.dart'; import '../../../constant/colors.dart'; import '../../widgets/my_scafold.dart'; class StaticDash extends StatelessWidget { const StaticDash({super.key}); @override Widget build(BuildContext context) { Get.put(StaticController()); return MyScafolld( title: 'Static Dash'.tr, body: [ GetBuilder(builder: (staticController) { return Column( children: [ Container( height: Get.height * .3, width: double.maxFinite, // decoration: AppStyle.boxDecoration1, child: Padding( padding: const EdgeInsets.all(6), child: Container( decoration: AppStyle.boxDecoration1, height: MediaQuery.of(context).size.height * 0.4, child: LineChart( LineChartData( lineBarsData: [ LineChartBarData( isStepLineChart: true, spots: staticController.chartDataPassengers, isCurved: true, color: Colors.deepPurpleAccent, // Custom color barWidth: 3, // Thinner line dotData: const FlDotData( show: true), // Show dots on each point belowBarData: BarAreaData( show: true, color: Colors.deepPurpleAccent.withOpacity( 0.3), // Custom gradient color ), isStrokeJoinRound: true, shadow: const BoxShadow( color: Colors.yellow, blurRadius: 4, offset: Offset(2, 2), ), ), ], showingTooltipIndicators: const [], titlesData: FlTitlesData( show: true, topTitles: AxisTitles( axisNameWidget: Text( 'Days'.tr, style: const TextStyle( fontSize: 14, fontWeight: FontWeight.bold), ), axisNameSize: 30, ), bottomTitles: AxisTitles( axisNameWidget: Text( 'Total passengers on month ${staticController.totalMonthlyPassengers}' .tr, style: const TextStyle( fontSize: 14, fontWeight: FontWeight.bold), ), axisNameSize: 30, sideTitles: const SideTitles( reservedSize: 30, showTitles: true, ), ), leftTitles: AxisTitles( axisNameWidget: Text( 'Counts of Passengers on days'.tr, style: const TextStyle( fontSize: 14, fontWeight: FontWeight.bold), ), axisNameSize: 30, sideTitles: const SideTitles( reservedSize: 30, showTitles: true, ), ), ), gridData: const FlGridData(show: true), borderData: FlBorderData( show: true, border: const Border( bottom: BorderSide(color: Colors.blueAccent), left: BorderSide(color: Colors.blueAccent), ), ), ), ), ), )), const SizedBox( height: 5, ), Container( height: Get.height * .3, width: double.maxFinite, // decoration: AppStyle.boxDecoration1, child: Padding( padding: const EdgeInsets.all(6), child: Container( decoration: AppStyle.boxDecoration1, height: MediaQuery.of(context).size.height * 0.4, child: LineChart( LineChartData( lineBarsData: [ LineChartBarData( isStepLineChart: true, spots: staticController.chartDataDrivers, isCurved: true, color: Colors.deepPurpleAccent, // Custom color barWidth: 3, // Thinner line dotData: const FlDotData( show: true), // Show dots on each point belowBarData: BarAreaData( show: true, color: Colors.deepPurpleAccent.withOpacity( 0.3), // Custom gradient color ), isStrokeJoinRound: true, shadow: const BoxShadow( color: Colors.yellow, blurRadius: 4, offset: Offset(2, 2), ), ), ], showingTooltipIndicators: const [], titlesData: FlTitlesData( show: true, topTitles: AxisTitles( axisNameWidget: Text( 'Days'.tr, style: const TextStyle( fontSize: 14, fontWeight: FontWeight.bold), ), axisNameSize: 30, ), bottomTitles: AxisTitles( axisNameWidget: Text( 'Total Drivers on month ${staticController.totalMonthlyDrivers}' .tr, style: const TextStyle( fontSize: 14, fontWeight: FontWeight.bold), ), axisNameSize: 30, sideTitles: const SideTitles( reservedSize: 30, showTitles: true, ), ), leftTitles: AxisTitles( axisNameWidget: Text( 'Counts of Drivers on days'.tr, style: const TextStyle( fontSize: 14, fontWeight: FontWeight.bold), ), axisNameSize: 30, sideTitles: const SideTitles( reservedSize: 30, showTitles: true, ), ), ), gridData: const FlGridData(show: true), borderData: FlBorderData( show: true, border: const Border( bottom: BorderSide(color: Colors.blueAccent), left: BorderSide(color: Colors.blueAccent), ), ), ), ), ), )), const SizedBox( height: 5, ), ], ); }) ], isleading: true); } }