2024-08-29
-
Expand crosshair on edges: #304
-
Custom crosshair labels formatter: #305
-
Add one point support for line mark: #306
-
Add crosshair paddings: #314
2024-07-18
- add label and labelBackground on crosshair: #303
2024-07-09
- Add
AxisGuide.labelBackground
andAxisGuid.labelBackgroundMapper
: #301 - Change
LabelStyle.textScaleFactor
toLabelStyle.textScaler
to be consist withTextPainter
: #300. Although this is a breaking change, only minor version is upgraded for this prop is rarely used.
2023-09-26
- Operator value use deep equality: #262
2023-05-15
- Add
RepaintBoundary
to reduce chart repainting: #220 - Fix that all items use the same shape params: #221
2023-04-20
- Add
Gesture.chartKey
: #217 - Add
localMoveStart
for both update and end events in scale and long presses.
2023-04-12
- Fix the Modifier error when updating: #206
- Rename enum property
MarkEntrance.alpha
toMarkEntrance.opacity
. - Fix polygon shape when there is only one datum or one value in a dim: #166
2023-04-06
-
Change name the following names to avoid conflict with dart/flutter built-in libraries (#193, #200):
View -> ChartView
Scene -> MarkScene
2023-04-04
- Fix LineShape dash: #212
2023-04-02
-
Add feature of transition animation, see details in
Mark.transition
. And thus the rendering engine is rewrited. The imperativeFigure
classes are changed to declarativeMarkElement
classes. See details in this folder: https://github.com/entronad/graphic/tree/main/lib/src/graffiti/element -
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
. -
Fix diposing functions.
2022-12-18
- Add mouse-focus scaling signal: #173
2022-11-01
- Graphic has finished initial development and ready for production from this version. The API will be stable while a new major version begins in the design.
- Add size to tooltip renderer function: #159
2022-09-20
- Fix memory leak of channels: #143
2022-07-22
- Fill region annotations with a gradient: #132
2022-06-07
- Fix the bug that
GeomElement.selected
dosen't work. - Fix: handle big numbers when calculating nice range/numbers: #107
2022-05-20
- Remove
_mouseIsConnected
checking from chart widget state. - Expose linearNiceRange and linearNiceNumbers algorithms: #105
2022-05-02
- Fix Stack Overflow when comparing modifiers: #96
2022-05-02
- Add
coordConv
toModifier.modify
's arguments.
2022-04-28
- Add
clip
forFigureAnnotation
s: #93 - Export modifier argument classes.
2022-04-28
- Add tuple indexes in tooltip renderer: #80
- Make modifier customizable: #88
- Remove
CustomShape
. Custom shapes directly extendShape
.
2022-04-20
- Fix dodge modifier: #86
2022-04-19
- Fix: add key to Chart StatefulWidget: #75
- Fix: add dispose to Chart.dart: #79
- Add size argument to custom annotation renderer method for responsiveness: #82
- Fix Sector corner radius bug: #58
2022-04-05
2022-02-21
- Allow
Label.text
andScale.formatter
return type to be null. For better performance, if they are null or empty string, nothing will be rendered: #51. - The element gradient will be constained within the coordinate region except point element: #53.
- Fix non-gesture signal bug of signal updaters in
Defaults
: #52.
2022-01-23
- Add Interaction Channel feature. See details in [Chart.gestureChannel], [Chart.resizeChannel], [Chart.changeDataChannel] and [Element.selectionChannel].
- Rename updater properties.
- Add more [LabelStyle] properties. Now it includes all properties for [TextPainter].
- Add coordinate region background.
- Fix auto scale bug when all values are 0.
2022-01-08
- Upgrade the tick nice numbers algorithm and API.
- Optimize radical axis label alignment.
- Forced data operator
equalValue
method to false so that modifying the data list instance can trigger evaluation: #43.
2021-12-28
- Dimensions now has a enum type
Dim
instead of int [1, 2], which is always confused with [0, 1]: #31. layer
now replacezIndex
, which may confuse with z dimension and has a flavour of HTML.- Fix
ScaleUpdateDetails.delta
problem. - Fix resize problem. Now chart will resize properly and will inflate even if parent has no indicated size: #37.
- Fix and recover the auto spec diff feature.
- Add dash line feature.
2021-12-19
- Fix the issue of CustomAnnotation: #33.
- Fix the auto scale range when all data values are equal: #30.
2021-12-13
- Fix the issue of shouldRelayout: #29.
- Temporarily remove the auto spec diff feature. Now the default
rebuild
is always false.
2021-12-11
- Upgrade flutter version to
'>=2.6.0'
forScaleUpdate.focalPointDelta
: #21. - The default
multituples
is true if a selection's variable is set. - Add
OrdinalScale.inflate
. - Remove the clip of figure annotation.
Chart.padding
is a function of chart size now.
2021-12-01
- Tooltip constraints.
- Now selections triggerd with same gesture is allowd.
- Device settings of selection.
- Now all z indexes are static, thus no need to resort scenes.
- Some updates above are inspired by #27.
2021-12-01
- Tooltip constraints.
- Now selections triggerd with same gesture is allowd.
- Device settings of selection.
- Now all z indexes are static, thus no need to resort scenes.
- Some updates above are inspired by #27.
2021-11-18
- Add nest operator:
\
of algebra. - Remove
GeomElement.groupBy
, which is replaced by nesting. - Force labels always above graphics in an element.
- Rename All function properties to nouns.
- Fix a scale fommatter generic bug: #22.
- Constrain flutter version to
'>=2.4.0 <2.6.0'
forScaleUpdate.delta
: #21.
2021-10-27
- Optimize the documentation.
- Move specifications to Chart class.
2021-10-26
- A complete refactoring.
- Better declaration grammer.
- Dataflow.
- Interactive.
- Documentation.
2020-12-04
- Add chart interaction.
- Optimize big data rendering by remoing _sort() in addShape().
2020-11-17
- Add invalid datum handling. Now if datum has invlid y values(null, NaN, Infinity), processions will handle correctly and line/area shape will have a break at that point.
- Add big data examples.
2020-11-03
- Redefine scale types to CatScale, LinearScale, and TimeScale, basicly according to the value type. This classification is closer to The Grammer of Graphics.
- Change Shape type from function to class, for future expansions.
- Redefine the datum record object.
- Remove polygon geom and move heatmap to point geom and rename it to 'tile'. This classification is closer to The Grammer of Graphics.
- Reconstruct the interval and area shape. Now they have two position points.
- Reconstruct stack adjust. Now they will really stack in height.
- Reconstruct symmetric adjust. Now it will not generate new records list.
2020-09-15
- Fix example pic link in readme.
2020-09-15
- First version.
- Provide static charts.