p3
import 'dart:math' as math;
import 'package:d_chart/d_chart.dart';
import 'package:flutter/material.dart';
List<OrdinalData> ordinalDataList = [
OrdinalData(
domain: 'Speed',
measure: 70,
color: Colors.deepPurple,
),
OrdinalData(
domain: '-',
measure: 30,
color: Colors.deepPurple.shade50,
),
];
SizedBox(
height: 200,
width: 200,
child: Stack(
children: [
DChartPieO(
data: ordinalDataList,
configRenderPie: const ConfigRenderPie(
arcWidth: 10,
strokeWidthPx: 0,
arcLength: math.pi,
startAngle: math.pi,
),
),
Positioned(
right: 100,
bottom: 100,
child: Center(
child: Transform.rotate(
// 70 == speed
angle: (70 * 1.8) * math.pi / 180,
alignment: Alignment.centerRight,
child: Image.asset(
'assets/long-arrow.png',
width: 56,
),
),
),
),
const Positioned(
bottom: 97,
left: 0,
right: 0,
child: Icon(
Icons.adjust,
size: 16,
color: Colors.deepPurple,
),
),
const Positioned(
bottom: 60,
left: 16,
right: 16,
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
'00',
style: TextStyle(
fontSize: 16,
color: Colors.black26,
),
),
Text(
'100',
style: TextStyle(
fontSize: 16,
color: Colors.black26,
),
),
],
),
),
],
),
),