MDCharts
march.dev charts library. Provides highly customizable and configurable charts.
Getting Started
LineChart
Data
-
REQUIRED data
data- set of data withDateTimekeys anddoublevalues based on which chart will be drawned.
-
There are 2 general types of the
LineChart:-
Periodicalgrid type (onlymonthlyavailable for now):Periodical means that if there's not enough data to draw full chart (there's gaps between dates) chart will automatically fulfill lacking data based on
LineChartDataType.-
For
LineChartDataType.bidirectionaldata type lacking data will be set to0. -
For
LineChartDataType.unidirectionaldata type lacking data will calculated from previous values so, that charts will be looking like ascending (e.g. Progress) or descending (e.g. Burndown) chart.
-
-
Undefinedgrid type:Undefined means that the chart will be drawned using only provided data.
Note that
LineChartDataTypeis omitted with this type of grid.
-
-
Max Value
predefinedMaxValue- predefined max value for the chart.maxValueRoundingMap- rounding map for the maxValue that is used by beautification function of Y axis labels.
-
Limits
limit- if provided, will be painted on the chart as a horizontal indication line.limitText- custom text to set to the label of the limit line.
Note that if
limitTextis set without providedlimit, there will be no limit line. -
Tooltip builders
titleBuilder- builds title of the tooltip based onDateTimekey and/ordoublevalue from provided data.subtitleBuilder- builds subtitle of the tooltip based onDateTimekey and/ordoublevalue from provided data.
-
Label builder
xAxisLabelBuilder- builds X axis label based onDateTimevalue from provided data.yAxisLabelBuilder- builds Y axis label based ondoublevalue from provided data,maxValuespecifically.
Settings
xAxisDivisions- quantity of the X axis divisions, defaults to3.yAxisDivisions- quantity of the Y axis divisions, defaults to2.xAxisLabelQuantity- quantity of the X axis labels to draw, defaults tonull.axisDivisionEdges- axis division edges, defaults toAxisDivisionEdges.none.showAxisX- whether to show X axis or not, defaults totrue.showAxisY- whether to show Y axis or not, defaults totrue.lineFilling- whether to fill chart between the line and the X axis or not, defaults totrue.lineShadow- whether to draw shadow beneath the line or not, defaults totrue.altitudeLine- whether to draw the altitude line or not, defaults totrue.limitLabelSnapPosition- snap position options of limit label, defaults toLimitLabelSnapPosition.axis.showAxisXLabels- whether to show labels on the X axis or not, defaults totrue.showAxisYLabels- whether to show labels on the Y axis or not, defaults totrue.
Styles
gridStyle- styling options for the grid, for more details please refer to the source code of theLineChartGridStyle.axisStyle- styling options for the axis, for more details please refer to the source code of theLineChartAxisStyle.lineStyle- styling options for the chart line, for more details please refer to the source code of theLineChartLineStyle.limitStyle- styling options for the limit, for more details please refer to the source code of theLineChartLimitStyle.pointStyle- styling options for the point and tooltip above point, for more details please refer to the source code of theLineChartPointStyle.
BarChart
Data
-
REQUIRED data
data- set of data withDateTimekeys andList<double>values based on which chart will be drawned.
-
Max Value
predefinedMaxValue- predefined max value for the chart.maxValueRoundingMap- rounding map for the maxValue that is used by beautification function of Y axis labels.
-
Selection
initialSelectedPeriod- initial selected period of the bar chart, defaults tonull.onSelectedPeriodChanged- callback that notifies if selected period has changed, defaults tonull.
-
Label builder
xAxisLabelBuilder- builds X axis label based onDateTimevalue from provided data.yAxisLabelBuilder- builds Y axis label based ondoublevalue from provided data,maxValuespecifically.
Settings
yAxisDivisions- quantity of the Y axis divisions, defaults to2.axisDivisionEdges- axis division edges, defaults toAxisDivisionEdges.none.showAxisX- whether to show X axis or not, defaults totrue.showAxisXLabels- whether to show labels on the X axis or not, defaults totrue.showAxisYLabels- whether to show labels on the Y axis or not, defaults totrue.barSpacing- spacing between bars in one item, defaults to0.itemSpacing- spacing between group of bars, defaults to12.showSelection- whether to show selection of the items or not, defaults totrue.duration- the length of time animation should last.alignment- alignment of the bars within chart.reverse- whether the scroll view scrolls in the reading direction.
Style
gridStyle- styling options for the grid, for more details please refer to the source code of theBarChartGridStyle.axisStyle- styling options for the axis, for more details please refer to the source code of theBarChartAxisStyle.barStyle- styling options for the chart line, for more details please refer to the source code of theBarChartBarStyle.
Examples
To see usage example navigate to the Example section.
Feature requests and Bug reports
Feel free to post a feature requests or report a bug here.