Dart 语言 图表集成与显示示例

Dart阿木 发布于 2025-06-19 9 次阅读


Dart 语言图表集成与显示示例

Dart 是一种由 Google 开发的编程语言,旨在构建高性能的网络应用。Dart 语言以其简洁、高效和易于学习而受到开发者的喜爱。在 Dart 中,图表的集成与显示是数据可视化的重要组成部分,可以帮助开发者更直观地展示数据。本文将围绕 Dart 语言图表集成与显示这一主题,通过示例代码展示如何在 Dart 应用中集成和显示图表。

Dart 图表库简介

在 Dart 中,有几个流行的图表库可以用于集成和显示图表,包括:

- charts: Google 官方提供的图表库,支持多种图表类型。

- fl_chart: 一个轻量级的图表库,支持多种图表类型,如饼图、折线图等。

- syncfusion_flutter_charts: Syncfusion 提供的图表库,功能丰富,支持多种图表类型和交互。

下面我们将以 `charts` 和 `fl_chart` 两个库为例,展示如何在 Dart 应用中集成和显示图表。

使用 charts 库集成图表

安装 charts 库

需要在 `pubspec.yaml` 文件中添加 `charts` 库:

yaml

dependencies:


charts: ^0.20.0


然后运行 `flutter pub get` 命令安装库。

创建图表

以下是一个简单的示例,展示如何使用 `charts` 库创建一个简单的折线图:

dart

import 'package:flutter/material.dart';


import 'package:charts_flutter/flutter.dart' as charts;

void main() {


runApp(MyApp());


}

class MyApp extends StatelessWidget {


@override


Widget build(BuildContext context) {


return MaterialApp(


title: 'Dart Charts Example',


home: LineChartExample(),


);


}


}

class LineChartExample extends StatelessWidget {


final List<charts.Series<SampleTimeSeriesData, DateTime>> seriesList;

LineChartExample() : seriesList = _createSampleData();

static List<charts.Series<SampleTimeSeriesData, DateTime>> _createSampleData() {


final data = [


SampleTimeSeriesData(DateTime(2021, 1, 1), 5),


SampleTimeSeriesData(DateTime(2021, 1, 2), 10),


SampleTimeSeriesData(DateTime(2021, 1, 3), 15),


SampleTimeSeriesData(DateTime(2021, 1, 4), 20),


SampleTimeSeriesData(DateTime(2021, 1, 5), 25),


];

return [


charts.Series<SampleTimeSeriesData, DateTime>(


id: 'Sales',


colorFn: (_, __) => charts.MaterialPalette.blue.shadeDefault,


domainFn: (SampleTimeSeriesData sales, _) => sales.time,


measureFn: (SampleTimeSeriesData sales, _) => sales.sales,


data: data,


)


];


}

@override


Widget build(BuildContext context) {


return charts.LineChart(seriesList);


}


}

class SampleTimeSeriesData {


final DateTime time;


final int sales;

SampleTimeSeriesData(this.time, this.sales);


}


运行应用

运行上述代码,你将看到一个简单的折线图,展示了随时间变化的数据。

使用 fl_chart 库集成图表

安装 fl_chart 库

同样,在 `pubspec.yaml` 文件中添加 `fl_chart` 库:

yaml

dependencies:


fl_chart: ^0.20.0


然后运行 `flutter pub get` 命令安装库。

创建图表

以下是一个简单的示例,展示如何使用 `fl_chart` 库创建一个饼图:

dart

import 'package:flutter/material.dart';


import 'package:fl_chart/fl_chart.dart';

void main() {


runApp(MyApp());


}

class MyApp extends StatelessWidget {


@override


Widget build(BuildContext context) {


return MaterialApp(


title: 'Dart Charts Example',


home: PieChartExample(),


);


}


}

class PieChartExample extends StatelessWidget {


@override


Widget build(BuildContext context) {


return Scaffold(


appBar: AppBar(


title: Text('Pie Chart Example'),


),


body: Center(


child: AspectRatio(


aspectRatio: 1.5,


child: PieChart(


PieChartData(


sectionsSpace: 0,


centerSpaceRadius: 0,


sections: [


PieChartSectionData(


color: Colors.red,


value: 50,


title: '50%',


),


PieChartSectionData(


color: Colors.green,


value: 30,


title: '30%',


),


PieChartSectionData(


color: Colors.blue,


value: 20,


title: '20%',


),


],


),


),


),


),


);


}


}


运行应用

运行上述代码,你将看到一个简单的饼图,展示了不同部分的数据占比。

总结

本文通过两个示例展示了如何在 Dart 应用中集成和显示图表。`charts` 和 `fl_chart` 库提供了丰富的图表类型和自定义选项,使得 Dart 开发者能够轻松地创建各种图表。通过这些图表,开发者可以更直观地展示数据,提升应用的用户体验。