边界。但是,似乎fl_chart没有直接支持圆形边界为图表的边界。
到目前为止,我尝试过的地方:
我使用Barchartdata的BorderData属性添加边框,但仅支持
矩形边界
我试图将Barchart小部件包裹在带有盒装的容器中以创建
圆角,但我不确定如何确保图表内容在内部正确对齐
圆形容器
SizedBox(
height: 250,
child: BarChart(
BarChartData(
alignment: BarChartAlignment.spaceEvenly,
maxY: dailyTotals.values.isNotEmpty
? dailyTotals.values.reduce((a, b) => a > b ? a : b) + 10
: 10,
barGroups: getWeeklyBarGroups(),
titlesData: FlTitlesData(
leftTitles: AxisTitles(sideTitles: SideTitles(showTitles: false)),
topTitles: AxisTitles(sideTitles: SideTitles(showTitles: false)),
rightTitles: AxisTitles(sideTitles: SideTitles(showTitles: false)),
bottomTitles: AxisTitles(
sideTitles: SideTitles(
showTitles: true,
getTitlesWidget: (value, meta) {
final weekDays = [
'Sat',
'Sun',
'Mon',
'Tue',
'Wed',
'Thu',
'Fri'
];
return Padding(
padding: const EdgeInsets.only(top: 8.0),
child: Text(
weekDays[value.toInt()],
style: const TextStyle(fontSize: 12, fontFamily: 'lexend'),
),
);
},
),
),
),
borderData: FlBorderData(
show: true,
border: Border.all(
color: Theme.of(context).colorScheme.primary,
width: 2,
),
),
),
),
),
SizedBox(
height: 250,
child: Container(
decoration: BoxDecoration(
color: Theme.of(context).colorScheme.surface,
borderRadius: BorderRadius.circular(16),
border: Border.all(
color: Theme.of(context).colorScheme.primary,
width: 2,
),
),
padding: const EdgeInsets.all(8),
child: BarChart(
BarChartData(
// Same BarChartData configuration as above
),
),
),
),