Flutter 通过flatter中的API调用绘制饼图
我试图在饼图中显示一些来自API的数据,但问题是如何将JSON数据应用到饼图中。我为此创建了一个自定义 从API获取数据的异步函数Flutter 通过flatter中的API调用绘制饼图,flutter,Flutter,我试图在饼图中显示一些来自API的数据,但问题是如何将JSON数据应用到饼图中。我为此创建了一个自定义 从API获取数据的异步函数 _getData() async{ final response = await http.get('https://api.myjson.com/bins/16e68w'); Map<String,dynamic> map = json.decode(response.body); return map; } 在图
_getData() async{
final response = await http.get('https://api.myjson.com/bins/16e68w');
Map<String,dynamic> map = json.decode(response.body);
return map;
}
在图表系列中格式化数据。
列表。
我们将为数据生成LinearSales对象列表
static List<charts.Series<LinearSales, int>> dataList(Map<String, dynamic> apiData) {
List<LinearSales> list = new List();
for(int i=0; i<apiData['data'].length; i++)
list.add(new LinearSales(i, apiData['data'][i]));
return [
new charts.Series<LinearSales, int>(
id: 'Sales',
domainFn: (LinearSales sales, _) => sales.year,
measureFn: (LinearSales sales, _) => sales.sales,
data: list,
labelAccessorFn: (LinearSales row, _) => '${row.year}: ${row.sales}',
)
];
}
}
class LinearSales {
final int year;
final int sales;
LinearSales(this.year, this.sales);
}
静态列表数据列表(映射数据){
列表=新列表();
对于(int i=0;i我已经为此创建了一个自定义
从API获取数据的异步函数
_getData() async{
final response = await http.get('https://api.myjson.com/bins/16e68w');
Map<String,dynamic> map = json.decode(response.body);
return map;
}
在图表系列中格式化数据。
列表。
我们将为数据生成LinearSales对象列表
static List<charts.Series<LinearSales, int>> dataList(Map<String, dynamic> apiData) {
List<LinearSales> list = new List();
for(int i=0; i<apiData['data'].length; i++)
list.add(new LinearSales(i, apiData['data'][i]));
return [
new charts.Series<LinearSales, int>(
id: 'Sales',
domainFn: (LinearSales sales, _) => sales.year,
measureFn: (LinearSales sales, _) => sales.sales,
data: list,
labelAccessorFn: (LinearSales row, _) => '${row.year}: ${row.sales}',
)
];
}
}
class LinearSales {
final int year;
final int sales;
LinearSales(this.year, this.sales);
}
静态列表数据列表(映射数据){
列表=新列表();
对于(int i=0;i您是否为此使用了任何软件包?是的,我使用了charts_颤振和JSON解析Http,您是否为此使用了任何软件包?是的,我使用charts_颤振和JSON解析Http,我已经更新了答案。现在它从API获取数据。希望这能解决您的问题。我想要完整的示例,包括main方法。我在调试时遇到了问题ng.出现完整代码异常。\u TypeError(类型“List”不是类型“Map”的子类型)我认为您传递的是数组而不是Map。请使用新的Flatter项目进行尝试。只需将准确的代码粘贴到“main.dart”中即可。这是一个完美的工作代码。我已经更新了答案。现在它从API获取数据。希望这能解决您的问题。我需要包含main方法的完整示例。我在调试时遇到问题。出现了完整的代码异常。\u TypeError(type“List”不是type“Map”的子类型)我想你通过的是数组而不是贴图。用一个新的颤振项目试试。只需将准确的代码粘贴到“main.dart”中。这是一个完美的工作代码。