graphic 2.2.0 icon indicating copy to clipboard operation
graphic: ^2.2.0 copied to clipboard

A grammar of data visualization and Flutter charting library.

Graphic #

Graphic is a grammar of data visualization and Flutter charting library.
  • Flexible declarative grammar: This visualization grammar derives from Leland Wilkinson's The Grammar of Graphics, and tries to balance between theoretical beauty and practicability. Data processing steps and mark shapes can be composed freely in a declarative specification, not limited to certain chart types. And shape draw methods are customizable.
  • Interaction: With the event and selection definition, the chart is highly interactive, such as highlighting selected items, popping a tooltip, or scaling the coordinate.
  • Animation: Mark transition animation can be set when a chart is built or changed. The entrance animation has various forms.

What's new in v2.0 #

  • Add feature of transition animation, see details in Mark.transition. And thus the rendering engine is rewrited. The imperative Figure classes are changed to declarative MarkElement classes. See details in this folder:

  • Update terminology to keep same with modern mainstream data visualization libraries. Some class names have changed:

    GeomElement -> Mark

    Attr -> Encode

    Signal -> Event

    Channel -> Stream

    Figure -> MarkElement

    And thus some properties related are also changed, like elements -> marks.

Documentation #

See in the documentation.

Examples #

Example of charts can be seen in the Example App. Please clone this repository and run the example project in example directory.


Tutorials #

The Versatility of the Grammar of Graphics

How to Build Interactive Charts in Flutter

Share this Lib #

Twitter HackerNews Reddit

License #

Graphic is MIT License.

Keep Informed #




pub points


unverified uploader

A grammar of data visualization and Flutter charting library.

Repository (GitHub)


API reference


Icon for licenses.unknown (LICENSE)


collection, flutter, path_drawing, vector_math


Packages that depend on graphic