Syncfusion Feedback

Flutter Charts - Beautiful and Interactive Charts and Graphs

  • 30+ Charts in a growing collection.
  • Smooth real-time charts.
  • Intuitive APIs with detailed documentation.
  • Rich interactive features to explore charts.
Pricing DOWNLOAD FREE TRIAL
SUPPORTED PLATFORMS
Apple Icon Android Icon Web Beta Icon

Trusted by the world’s leading companies

Syncfusion Trusted Companies

new layout

Why Choose Syncfusion Flutter Charts?

The Flutter Charts is a well-crafted charting widget for visualizing data. It contains a rich gallery of 30+ charts and graphs, ranging from line to financial charts, that cater to all charting scenarios.

Flutter chart types icon

30+ Charts

This widget includes the most popular and widely used charts like line, column, bar, pie, and doughnut.

Flutter chart features icon

Rich feature set

A vast range of features is available to customize the appearance of charts and render the desired outputs.

Flutter chart animation icon

Fluid animation

Fluid animation represents data with smooth transitions.

Flutter chart performance icon

Performance

The Flutter Charts widget was designed with a focus on fast-paced performance to let users render huge amounts of data in seconds.

Flutter chart globalization icon

Globalization

Enables Users from different locales to use Charts by formatting dates, currencies, and numbering to suit their preferences.

Flutter chart responsive icon

Responsiveness

Charts in Flutter render adaptively based on device type, like phones and tablets, and device orientation, providing an optimal user experience.


Chart axis

The Flutter Charts with rich UI supports four different types of axes: numerical, categorical, date-time, and logarithmic. The appearance of all chart axis elements can be customized with built-in properties.

Numerical axis

Uses a numeric scale and displays numbers in equal intervals in axis labels.

Flutter chart with numeric axis

Categorical axis

A non-linear axis that displays text in axis labels.

Flutter chart with categorical axis

Date-time axis

Displays date-time values in equal intervals in axis labels. It is typically used as the x-axis.

Flutter chart with date-time axis

Date-time category axis

Displays date-time category values in non-linear intervals in axis labels. It is typically used as the x-axis.

Flutter chart with date-time axis

Logarithmic axis

Uses a logarithmic scale and displays numbers in labels.

Flutter chart with logarithmic axis


Real-time charts

Flutter real-time charts allow you to display live data that changes in seconds or minutes.

Dynamic updates

Flutter Charts updates itself when the data changes or is added at run time with smooth transitions.

Flutter chart with dynamic update

Smooth fluid animation

The dynamically updated data point values are rendered with fluid easing animation.

Flutter chart with fluid animation


User interactions

The end-user experience is greatly enhanced by interaction features such as zooming, panning, trackball, selection, tooltip, and auto scrolling.

Zooming and panning

Improve the readability of large numbers of data points by zooming and panning. Zooming is performed by pinching, selecting a region, or double-tapping at the required position.

Flutter chart with zooming and panning

Tooltip

The tooltip displays a pop-up with additional information when the user taps on a data point.

Flutter chart with tooltip

Selection

Interactively select and highlight a data point. This is usually used to navigate to another page that contains information about the selected data point or to update other components in the same page based on the selected data point in the chart.

Flutter chart with selection

Trackball

Track data points that are close to the touch contact. Trackball displays pop-up information about the data with more customizable options.

Flutter chart with trackball

Crosshair

Using a crosshair, inspect or target any data point. The target data point is indicated by a thin horizontal line crossing a vertical line, and information about that point is displayed in an interactive tooltip.

Flutter chart with crosshair

Auto scrolling

Auto scrolling ensures that a specified range of data points is always visible in a chart. You can view the remaining data points by scrolling.

Flutter chart with trackball


Data labels and markers

Data points can easily be annotated with labels to improve the readability of a Flutter chart. Readability can further be enhanced by adding markers or customizable symbols.

Data point markers

Mark the data points with built-in available shapes to improve readability.

Flutter chart with markers

Labels and connector lines

Connect a data point and its label with a Bezier curve or a straight line.

Flutter chart with labels

Label customization

Charts for Flutter customize data labels using templates.

Flutter chart with customized labels


Legends

Legends provide additional information helpful in identifying individual data points or a series in a Flutter chart.

Positioning

Position the legend anywhere in the chart area to best suit the page.

Flutter chart with modified legend position

Icons

Customize a legend icon with built-in shapes such as rectangles, circles, diamonds, pentagons, triangles, and crosses to improve readability.

Flutter chart with legend icon

Templating

Template the legend items to show more information about a series or data point in a legend.

Flutter chart with templated legend

Legend layout

Wrap or scroll legend items if they overflow the existing space.

Flutter chart with wrapped legend


Other feature highlights

From a vast collection of features available in Flutter Charts, a few are described here.

Vertical charts

Rotate all the series in a Flutter chart to plot data vertically and view it from a different perspective.

Vertical Flutter chart

Annotations

Display metadata about a Flutter chart or series at a specific point of interest in the plotting area using annotations.

Flutter chart with annotations

Plot bands

Highlight specific regions in a plot using plot bands. Add text to describe a highlighted area.

Flutter chart with plot bands

Technical indicators

Built-in support for RSI, momentum, Bollinger bands, accumulation distribution, EMA, SMA, stochastic, ATR, MACD, TMA, ROC, and WMA indicators.

Flutter chart with technical indicators

Trendlines

Built-in support for linear, exponential, logarithmic, polynomial, and moving average trendlines for technical analysis in Flutter charts.

Flutter chart with trendlines

Gradient colors

Improve the readability and appearance of charts by applying gradient colors to visualized data in different colors.

Flutter chart with gradient

Empty points

Elegantly handle the empty point values in Flutter charts.

Flutter chart with empty points


Flutter Charts Code Example

Easily get started with the Flutter Charts using a few simple lines of DART code example as demonstrated below. Also explore our Flutter Charts Example that shows you how to render and configure the Charts in Flutter.

  1. import 'package:flutter/material.dart';
  2. import 'package:syncfusion_flutter_charts/charts.dart';
  3.  
  4. void main() {
  5. return runApp(_ChartApp());
  6. }
  7.  
  8. class _ChartApp extends StatelessWidget {
  9. @override
  10. Widget build(BuildContext context) {
  11. return MaterialApp(
  12. home: _MyHomePage(),
  13. );
  14. }
  15. }
  16.  
  17. class _MyHomePage extends StatefulWidget {
  18. // ignore: prefer_const_constructors_in_immutables
  19. _MyHomePage({Key? key}) : super(key: key);
  20.  
  21. @override
  22. _MyHomePageState createState() => _MyHomePageState();
  23. }
  24.  
  25. class _MyHomePageState extends State<_MyHomePage> {
  26. List<_SalesData> data = [
  27. _SalesData('Jan', 35),
  28. _SalesData('Feb', 28),
  29. _SalesData('Mar', 34),
  30. _SalesData('Apr', 32),
  31. _SalesData('May', 40)
  32. ];
  33. @override
  34. Widget build(BuildContext context) {
  35. return Scaffold(
  36. appBar: AppBar(
  37. title: const Text('Syncfusion Flutter chart'),
  38. ),
  39. body: Column(children: [
  40. //Initialize the chart widget
  41. SfCartesianChart(
  42. primaryXAxis: CategoryAxis(),
  43. // Chart title
  44. title: ChartTitle(text: 'Half yearly sales analysis'),
  45. // Enable legend
  46. legend: Legend(isVisible: true),
  47. series: <ChartSeries<_SalesData, String>>[
  48. LineSeries<_SalesData, String>(
  49. dataSource: data,
  50. xValueMapper: (_SalesData sales, _) => sales.year,
  51. yValueMapper: (_SalesData sales, _) => sales.sales,
  52. name: 'Sales',
  53. // Enable data label
  54. dataLabelSettings: DataLabelSettings(isVisible: true))
  55. ]),
  56. ]));
  57. }
  58. }
  59.  
  60. class _SalesData {
  61. _SalesData(this.year, this.sales);
  62. final String year;
  63. final double sales;
  64. }

Frequently Asked Questions

  • Support for 30+ chart types with elegant animation.
  • A vast set of great, interactive features enhance the end-user experience.
  • Easy creation and customization of charts in Android, iOS, web, Windows, macOS, and Linux platforms.
  • One of the best Flutter Charts in the market that offers feature-rich UI to interact with the software.
  • Large sets of data can be visualized with on-demand loading, flexible data binding, and high performance.
  • Every element in the charts is completely customizable.
  • Simple configuration and intuitive APIs.
  • Adaptive and responsive UI.
  • Support for all modern devices and browsers.
  • Extensive demos in all supported platforms (Android, iOS, Web, Windows, macOS and Linux demos).
  • Get started with Flutter Charts quickly using the documentation and tutorial videos

You can find our Flutter Charts demo here.

No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue, 5 or fewer developers, and 10 or fewer total employees.

A good place to start would be our comprehensive getting started documentation.

Our Customers Love Us

Having an excellent set of tools and a great support team, Syncfusion® reduces customers’ development time.
Here are some of their experiences.

Rated by users across the globe

Awards

Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion® is proud to hold the following industry awards.

Up arrow icon
Chat with us