Charts 如何从Flatter在饼图上添加标签?
我想让用户在饼图中看到更多信息(例如数据百分比,如下图所示)。 我的代码用于显示饼图,我在图表中尝试了一些函数,如displayName、labelAccessorFn。系列,但似乎标签仍然向下显示Charts 如何从Flatter在饼图上添加标签?,charts,flutter,Charts,Flutter,我想让用户在饼图中看到更多信息(例如数据百分比,如下图所示)。 我的代码用于显示饼图,我在图表中尝试了一些函数,如displayName、labelAccessorFn。系列,但似乎标签仍然向下显示 @override Widget build(BuildContext context) { return new charts.PieChart(seriesList, animate: animate, defaultRenderer: new
@override
Widget build(BuildContext context) {
return new charts.PieChart(seriesList,
animate: animate,
defaultRenderer: new charts.ArcRendererConfig(arcWidth: 60));
}
new charts.Series<LinearSales, int>(
id: 'Sales',
domainFn: (LinearSales sales, _) => sales.year,
measureFn: (LinearSales sales, _) => sales.sales,
data: data,
)
@覆盖
小部件构建(构建上下文){
返回新图表。PieChart(系列列表,
动画制作:动画制作,
defaultRenderer:new charts.arcRenderConfig(arcWidth:60));
}
新图表系列(
id:'销售',
domainFn:(LinearSales sales,)=>sales.year,
measureFn:(LinearSales sales,)=>sales.sales,
数据:数据,
)
我想你错过了这一点:
new charts.Series<LinearSales, int>(
id: 'Sales',
domainFn: (LinearSales sales, _) => sales.year,
measureFn: (LinearSales sales, _) => sales.sales,
data: data,
labelAccessorFn: (LinearSales row, _) => '${row.year}: ${row.sales}', //Add this
)
新图表系列(
id:'销售',
domainFn:(LinearSales sales,)=>sales.year,
measureFn:(LinearSales sales,)=>sales.sales,
数据:数据,
labelAccessorFn:(LinearSales行,)=>'${row.year}:${row.sales}',//添加此
)
对于遇到此问题的其他人:
要将标签添加到图表中,您需要将ArcRenderDecorators
添加到ArcRenderConfig
中,如下所示:
@override
Widget build(BuildContext context) {
return charts.PieChart(
seriesList,
animate: animate,
defaultRenderer: new charts.ArcRendererConfig(
arcWidth: 120,
arcRendererDecorators: [ // <-- add this to the code
charts.ArcLabelDecorator() // <-- and this of course
]
));
}
}
@覆盖
小部件构建(构建上下文){
返回图表(
系列列表,
动画制作:动画制作,
defaultRenderer:new charts.arcRenderConfig(
弧宽:120,
ArcRenderDecorators:[//是的。我们将使用labelAccessorFn在饼图中显示标签我想知道是否有一个选项可以帮助我解决这个问题-