NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #282 most downloaded on pub.dev
A highly customizable Flutter chart library that supports Line Chart, Bar Chart, Pie Chart, Scatter Chart, and Radar Chart.
Last release 6 months ago
13 Mar 2026
Release timing varies
gaps range from 9 days to 6 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
105 releases · first in 2019
BUGFIX (by @imaNNeo ) Consider the enabled property in LineTouchData , BarTouchData , PieTouchData , ScatterTouchData , RadarTouchData and Candlestick
enabled property in LineTouchData, BarTouchData, PieTouchData, ScatterTouchData, RadarTouchData and CandlestickTouchData, #1676horizontalMirrored and verticalMirrored properties in our LabelDirection enum which is used in (HorizontalLineLabel and VerticalLineLabel), #1890cornerRadius property in the PieChartSectionData, #1175label property in the BarChartRodData to allow you to show a label on top of each bar rod, #2071, #84One column per quarter.
IMPROVEMENT (by @imaNNeo ) Upgrade vector_math dependency to 2.2.0 , #1985
…constructor. As it is a very minor breaking change, we decided to include it in this minor release (instead of doing a major release based on the sema…
gradient property inside our BarChartRodStackItem to be able to render gradient (along with the possibility to render a solid color), #919sideTitleAlignment property in our AxisTitles to allow you to control the alignment of side titles (for example show them inside the chart), #1946gradientArea property to LineChartBarData to allow you to control the scope of gradient effects, #1925label and labelStyle properties in our BarChartRodStackItem to allow you to show labels on each stack item, #598borderSide now is a named parameter (instead of a optional positional parameter in BarChartRodStackItem constructor. As it is a very minor breaking change, we decided to include it in this minor release (instead of doing a major release based on the semantic versioning. Sorry about that!BarChartRodStackItem(
0,
10,
Colors.green,
BorderSide(color: Colors.white),
),to this:
BarChartRodStackItem(
0,
10,
Colors.green,
borderSide: BorderSide(color: Colors.white),
),BREAKING (by @imaNNeo ) Remove the deprecated tooltipRoundedRadius property -> you should use tooltipBorderRadius instead.
tooltipRoundedRadius property -> you should use tooltipBorderRadius instead.3.27.4. So please make sure that your project is not using an old flutter version, #1846IMPROVEMENT (by @MattiaPispisa ) Add a new property called BorderRadius tooltipBorderRadius instead of (deprecated) double tooltipRoundedRadius in Bar…
BorderRadius tooltipBorderRadius instead of (deprecated) double tooltipRoundedRadius in BarTouchTooltipData, LineTouchTooltipData and ScatterTouchTooltipData #1715children property in our RadarChartTitle, #1840FEATURE (by @imaNNeo ) Add error range feature in our axis-based charts. You can set xError and yError in the FlSpot or toYErrorRange in BarChartRodDa
xError and yError in the FlSpot or toYErrorRange in BarChartRodData. Also we have errorIndicatorData property in our LineChartData, BarChartData and ScatterChartData that is responsible to render the error bars. You can take a look at the LineChartSample 13 and BarChartSample 8 in our sample app, #1483FEATURE (by @Peetee06 ) Add panEnabled and scaleEnabled properties in the TransformationController, #1818
panEnabled and scaleEnabled properties in the TransformationController, #1818renderPriority feature in our ScatterSpot, #1545rotationQuarterTurns property in our Axis-Based charts (such as LineChart, BarChart and ScatterChart). It allows you to rotate the chart 90 degrees (clockwise) in each turn. For example you can have Horizontal Bar Charts by setting rotationQuarterTurns to 1 (which rotates the chart 90 degrees clockwise). It works exactly like RotatesBox widget, #113isMinValueAtCenter property in the RadarChart to allow the user to set the minimum value at the center of the chart, #1351, #1442TitleMeta parameter in the SideTitleWidget instead of axisSideWe hope it will not affect anything in our chart, but because the behaviour is changed, we marked it as a breaking change. (read more here )
FlTransformationConfig class. You can now enable scaling and panning for LineChart, BarChart and ScatterChart using this classbar_chart_data_extensions_test.dart, gradient_extension_test.dart and fixed a typo in bar_chart_data.dartBarChart is not const anymore due to adding an assert to check if transformations are allowed depending on the BarChartData.alignment property (read more here)IMPROVEMENT (by @imaNNeo ) Fix the analyzer warnings (to have maximum score in the pub.dev )
IMPROVEMENT (by @imaNNeo ) Deprecate swapAnimationDuration and swapAnimationCurve properties to use curve and duration instead to keep the consistency…
duration and curve properties, #1618swapAnimationDuration and swapAnimationCurve properties to use curve and duration instead to keep the consistency over the project, #1618BUGFIX (by @imaNNeo) Fix a memory leak issue in the axis-based charts, there was a logic to calculate and cache the minX, maxX, minY and maxY properti
Improvement (by @imaNNeo) Update LineChartSample6 to implement a way to show a tooltip on a single spot, #1620
titleSunbeamLayout inside the BarChartData to allow the user to customize the layout of the title sunbeamFEATURE (by @julien4215) Add direction property to the HorizontalLineLabel and VerticalLineLabel, #1574
getTooltipColor which provides more customizability), checkout the full migration guide here./// Migration guide:
/// This is the old way:
BarChartData(
barTouchData: BarTouchData(
touchTooltipData: BarTouchTooltipData(
tooltipBgColor: Colors.blueGrey,
)
)
)
/// This is the new way:
BarChartData(
barTouchData: BarTouchData(
touchTooltipData: BarTouchTooltipData(
getTooltipColor: (BarChartGroupData group) => Colors.blueGrey,
)
)
)
BUGFIX (by @stwarwas) Remove dart.io to fix web platform issue, #1577
BUGFIX (by @imaNNeo) Fix PieChart blackout issue, #1538
IMPROVEMENT (by @imaNNeo) Add Flutter sdk constraints to the pubspec.yaml to force the user/developer to upgrade the Flutter version to 3.16.0 (latest
dotPainter property to ScatterSpot to allow customizing the dot painter, #568color and radius properties from ScatterSpot (use dotPainter instead), #568strokeWidth to 0.0/// Migration guide:
/// This is the old way:
ScatterSpot(
2,
5,
color: Colors.red,
radius: 12,
)
/// This is the new way:
ScatterSpot(
2,
8,
dotPainter: FlDotCirclePainter(
color: Colors.red,
radius: 22,
),
),
master to mainFEATURE (by @Dartek12) Added gradient to FlLine, #1197
toY (or positive fromY) in BarChart's minY and maxY calculations, #1470BUGFIX (by @Anas35) Fix Tooltip not displaying when value from BackgroundBarChartRodData is less than zero. #1345.
BUGFIX (by @imaNNeo) Fix PieChart crash on web-renderer html by ignoring sectionsSpace when Path.combine() does not work (it's flutter engine issue),
sectionsSpace when Path.combine() does not work (it's flutter engine issue), #955BUGFIX (by @JoshMart) Fix extra lines not painting when at chart min or max, #1255.
IMPROVEMENT (by @imaNNeo) Remove assertion to check to provide only one of color or gradient property in the BarChartRodData and BackgroundBarChartRod
color or gradient property in the BarChartRodData and BackgroundBarChartRodData, #1121.drawBehindEverything property default to true in AxisTitles class, #1097.0 instead of -0 in some edge-cases in the default titlestooltipHorizontalAlignment and tooltipHorizontalOffset property in [LineTouchTooltipData], [BarTouchTooltipData], [ScatterTouchTooltipData].IMPROVEMENT (by @lsaudon) Replace flutter_lints by very_good_analysis
longPressDuration optional property that allows to control the duration LongPress gesture occurs, #1114 #1127.pubspec.yaml to support new pub.dev feature. Read more about it here and here.pubspec.yaml (I just renamed my username)positionPercentageOffset optional property to RadarChartTitle to allow individual title positioningBUGFIX (by @imaNNeo): Fix inner border of pieChart with single section, #1089
<img src="https://github.com/imaNNeo/fl_chart/raw/main/repo_files/images/tmp_iran_banner.png" width=500 />
As you might know, Islamic Republic of Iran is murdering people in silence right now in Iran They shut the Internet down to do that. That’s why I cannot maintain this library for a while. Now we need your help, please be our voice by spreading news in your media to support us Search these hashtags:
Also, this article might help.
BUGFIX (by @ateich): Fix infinite loop in RadarChart when all values in RadarDataSet are equal, #882.
FEATURE (by @emelinepal): Add tooltipBorder property in [LineTouchTooltipData], [BarTouchTooltipData], [ScatterTouchTooltipData], #692.
tooltipBorder property in [LineTouchTooltipData], [BarTouchTooltipData], [ScatterTouchTooltipData], #692.angle and now returns a RadarChartTitle instead of a simple string. (Read our Migration Guide to learn more about it)FEATURE (by @imaNNeo): Add SideTitleWidget to help you use it in [SideTitles.getTitlesWidget]. It's a wrapper around your widget. It keeps your provid
SideTitleWidget to help you use it in [SideTitles.getTitlesWidget]. It's a wrapper around your widget. It keeps your provided child widget close to the chart. It has angle and space properties to handle margin and rotation. There is a axisSide property that you should fill, it has provided to you in the MetaData object. Check the below sample:getTitlesWidget: (double value, TitleMeta meta) {
return SideTitleWidget(
axisSide: meta.axisSide,
space: 8.0,
angle: 0.0,
child: const Text("This is your widget"),
);
},
IMPROVEMENT Fix a backward compatibility issue with Flutter 3.0, #1016
IMPROVEMENT Fix test coverage problem again :/
IMPROVEMENT Fix test coverage problem
IMPROVEMENT Fix order of drawing lineChart bar indicator problem, #198.
isStrokeJoinRound property in LineChartBarData.chartRendererKey property to the LineChart, BarChart, and ScatterChart. We pass it directly to our chart renderers that are responsible to render the chart itself (without anything around it like titles), #987.BUGFIX Allow to show axisTitle without sideTitles, #963
This release has some breaking changes. So please check out the migration guide [here]
This release has some breaking changes. So please check out the migration guide here
String. For example, you can pass an Icon widget as a title, #183. Check below samples:LineChartSample 8 (Source Code) <img src="https://github.com/imaNNeo/fl_chart/raw/main/repo_files/images/line_chart/line_chart_sample_8.png" width="300" >
BarChartSample 7 (Source Code)
<img src="https://github.com/imaNNeo/fl_chart/raw/main/repo_files/images/bar_chart/bar_chart_sample_7.gif" width="300" >
FlTitlesData, AxisTitles, and SideTitles are changed. Because we are using a new system which allows you to pass any Flutter Widget as a title instead of passing string, textStyle, textAlign, rotation, ... (Read our Migration Guide)colors property renamed to color to keep only one solid color. And now we have a gradient field instead of colorStops, gradientFrom and gradientTo in following classes: BarChartRodData, BackgroundBarChartRodData, BarAreaData, BetweenBarsData, LineChartBarData. (Read our Migration Guide to learn more about it)BUGFIX Fix drawing BetweenBarsArea problem when there are nullSpots in fromLine and toLine, #912.
nullSpots in fromLine and toLine, #912.fromY and toY properties in BarChartRodData It means you can have a negative and a positive bar chart at the same X location. #334, #875. Check BarChartSample5 and [BarChartSample6](https://github.com/imaNNeo/fl_chart/blob/main/repo_files/documentations/bar_chart.md#sample-6-source-code.y property to toY in BarChartRodData and BackgroundBarChartRodData due to the above feature.BUGFIX Fix FlSpot.nullSpot at the first of list bug, #912.
FlSpot.nullSpot at the first of list bug, #912.scatterLabelSettings property in ScatterChart which lets you to add titles on the spots, #902.BUGFIX Fix clipData implementation in ScatterChart and LineChart, #897.
clipData implementation in ScatterChart and LineChart, #897.baselineX and baselineY property in our axis-based charts, It fixes a problem about interval which mentioned in #893 (check this sample.distanceCalculator to LineTouchData which is used to calculate the distance between spots and touch events, #716, #261, #892LineTouchResponse response now contains a list of TouchLineBarSpot instead of LineBarSpot. They are ordered based on their distance to the touch event and also contain that distance.BUGFIX Fix getNearestTouchedSpot. Previously it returned the first occurrence of a spot within the threshold, and not the nearest, #641, #645.
textAlign property in the SideTitles, #784.IMPROVEMENT Fix showing zero value in side titles and grid lines when we add negative value. Now we always go through the zero value in each axis, #73
BUGFIX Fix BarChart empty groups state error, #797.
IMPROVEMENT Use 80 characters for code format line-length instead of 100 (because pub.dev works with 80 and decreased our score).
IMPROVEMENT Fix pub.dev determining web support, #780.
BUGFIX Fixed pieChart centerRadius = double.infinity problem, #747.c
centerRadius = double.infinity problem, #747.c(FlTouchEvent event, BaseTouchResponse? response) which FlTouchEvent determines which touch/pointer event happened (such as FlTapUpEvent, FlPanUpdateEvent, ...), and BaseTouchResponse gives us the chart response.touchInput and clickHappened properties anymore. Use FlTouchEvent provided in the callback instead of touchInput. Check event is FlTapUpEvent to detect touch events instead of checking clickHappened;longPress touch events. check FlTouchEvent to see all kind of supported touch/pointer events (which can be FlLongPressStart, FlLongPressMoveUpdate, FlLongPressEnd, ...). Also you can check out touch handling doc, #649.mouseCursorResolver callback in touchData classes such as LineTouchData and BarTouchData. You can change the MouseCursor based on the provided FlTouchEvent and touchResponse using this callback. (We have used this feature in PieChartSample2)ScatterChart default touchHandling crashBarChartAlignment.spaceEvenly as alignment property of BarChartData by defaulttextStyle of ScatterTooltipItem is now nullable and optional. bottomMargin is also optional (default is zero). So both are named parameters now.ScatterChart.fl_chart and resolve more issues. Now you can buy me a coffee!IMPROVEMENT Added borderSide property in BarChartRodData and BarChartRodStackItem to draw strokes around each bar and rod stack items, #714.
borderSide property in BarChartRodData and BarChartRodStackItem to draw strokes around each bar and rod stack items, #714.getTextStyles callback now give you a context and value (previously it was only a value).colorStops calculation which used in gradient colors, #732.IMPROVEMENT Show proper error message when there is less than 3 RadarEntry in RadarChart, #694.
borderSide property in PieChartSectionData to draw strokes around each section, #606.IMPROVEMENT Support onMouseExit event in all charts.
onMouseExit event in all charts.rotateAngle property in LineTouchTooltipData, BarTouchTooltipData, ScatterTouchTooltipData, #260, #679.IMPROVEMENT Allow to set zero value on PieChartSectionData (we remove zero sections instead of crashing), #640.
0.36.0, we had to revert 2nd change of 0.36.0)lineIndex property from (ShowingTooltipIndicators)[https://github.com/imaNNeoFighT/fl_chart/blob/main/repo_files/documentations/line_chart.md#showingtooltipindicators].BUGFIX Fixed bug of lerping FlSpot.nullSpot, #487.
interval is working correctly in bottomTitles in the BarChart, #648.spotsIndices instead of showingSpots in ShowingTooltipIndicators.IMPROVEMENT Added children property in the LineTooltipItem, BarTooltipItem and ScatterTooltipItem which accepts a list of TextSpan. It allows you to h
children property in the LineTooltipItem, BarTooltipItem and ScatterTooltipItem which accepts a list of TextSpan. It allows you to have more customized texts inside the tooltip. See BarChartSample1 and ScatterSample2, #72, #294.getTouchLineStart and getTouchLineEnd in LineTouchData to give more customizability over showing the touch lines. see SampleLineChart9.sectionsSpace in PieChart for the web.FlDotCrossPainter which extends FlDotPainter to paint X marks on line chart spots.textDirection property in LineTooltipItem, BarTooltipItem and ScatterTooltipItem. It allows you to support rtl languages in tooltips.textDirection property in SideTitles class, #531. It allows you to support rtl languages in side titles.textDirection property in AxisTitles class. It allows you to support rtl languages in axis titles.borderData: FlBorderData(show: true).0 value on PieChartSectionData.value anymore, instead remove it from list.fullHeightTouchLine property from LineTouchData. Now you can have a full line with following snippet:LineTouchData(
...
getTouchLineStart: (barData, index) => -double.infinity // default: from bottom,
getTouchLineEnd: (barData, index) => double.infinity //to top,
...
)
[IMPROVEMENT] We now use RenderObject as our default drawing system. It brings a lot of stability. Such as size handling, hitTest handling (touches),
textAlign property in the BarTooltipItem, LineTooltipItem, and ScatterTooltipItem, default is TextAlign.center.direction property in the BarTouchTooltipData, and LineTouchTooltipData to specify the position of the tooltip (can be auto, top, bottom), default is auto.swapAnimationCurve property to all chart widgets which handles the built-in animation Curve, #436.tooltipBottomMargin to tooltipMargin property in the BarTouchTooltipData, and LineTouchTooltipDatadouble.infinity in PieChartData .centerSpaceRadius, #584.[BREAKING] We now support flutter version 2.0 (null-safety), check out the migration guide.
[BREAKING] We have migrated our project to null-safety. You may need to change your source-code to compile. check migration guide.
[Bugfix] Fixed PieChart exception bug on sections tap, #514.
[Bugfix] Fixed PieChart badges draw in first frame problem, #513.
[Bugfix] Fixed PieChart badges bug with re-implementing the solution, #507
[Improvement] [BREAKING] Replaced color property with colors in BarChartRodData, and BackgroundBarChartRodData to support gradient in BarChart, instea
color property with colors in BarChartRodData, and BackgroundBarChartRodData to support gradient in BarChart, instead of solid color, #166. Check BarChartSample3textStyle property to getTextStyles getter (it gives you the axis value, and you must return a TextStyle based on it), It helps you to have a different style for specific text, #439. Check it here LineChartSample3badgeWidget, and badgePositionPercentageOffset in each PieChartSectionData to provide a widget to show in the chart, see this sample, #443. Providing a widget is an important step in our library, if it works perfectly, we will aplly this solution on other parts. Then I appreciate any feedback.[Bugfix] Fixed drawing BarChart rods with providing minY (for positive), maxY (for negative) values bug, #404.
0.18.1[Bugfix] Prevent show ScatterSpot if show is false, #385.
touchedStackItem and touchedStackItemIndex properties in the BarTouchedSpot to determine in which BarChartRodStackItem click happened, #393.rodStackItem to rodStackItems in BarChartRodData.[Improvement] Show barGroups x value instead of index in bottom titles, #342.
x value instead of index in bottom titles, #342.double.infinity instead of double.nan for letting enterSpaceRadius be as large as possible in the (PieChartData)[https://github.com/imaNNeoFighT/fl_chart/blob/main/repo_files/documentations/pie_chart.md#piechartdata], #377.[Improvement] Auto calculate interval in SideTitles and FlGridData, instead of hard coding 1, to prevent some performance issues like #101, #322. see
checkToShowTitle property to the SideTitles, for checking show or not show titles in the provided value, #331. see LineChartSample8.FlDotData.etDotPainter and pass your own painter or use built-in ones, see this sample.clipToBorder with clipData in LineChartData to support clipping 4 sides of a chart separately.[Bugfix] Fixed showing PieChart on web (we've ignored groupSpace on web, because some BlendModes are not working yet)
groupSpace on web, because some BlendModes are not working yet)[BugFix] Fixed groupBarsPosition exception, #313.
Your coding agent can read these notes before it upgrades. Set up the MCP server →