File Release Notes and Changelog
Notes:
This is a major new release of the flare toolkit.
There are extensive additions, including a new labeling API, a new analytics package, tooltip support, updates to the
filtering and sorting utilities, and a host of new visual encoding operators.
See the change log for more details.
Changes:
Restructured flare organization into a single project
Added analytics package
- CommunityStructure clustering
- BetweennessCentrality stats
- LinkDistance stats
- MaxFlowMinCut computation
- ShortestPaths
- SpanningTree
- AspectRatioBanker
- Support classes for heaps and matrices
Added / fixed layouts
- Added CirclePackingLayout
- Added IcicleTreeLayout
- Added BundledEdgeRouter
- Updated Circle layout to provide a general radial scatterplot
- Fixed StackedAreaLayout bugs
- Added generalized size property to TreeMapLayout
Added Labeling support in operator.label package
- Added default Labeler class for Cartesian coordinates
- Added RadialLabeler for polar coordinates
- Added StackedAreaLabeler
Added new controls
- Added TooltipControl
- Added ClickControl
- Updated SelectionControl
Updated Event Models
- Added event metadata to event dispatching classes
- Replaced transition callbacks with events (START, STEP, STOP)
- Replaced control callbacks with events (HoverControl, SelectionControl, TooltipControl)
- Improved DataEvent and SelectionEvent classes
Added DataList data groups
- Additional named DataLists can now be added to a Data instance
- DataLists now independent, with cancelable add/remove events
- Updated encoders to take a "group" parameter to target a given group,
this replaces the previous "which" flag
New property management abstractions
- Added IEvaluable and IPredicate interfaces
- Updated Property and Expression to implement both
- Updated DataList.setProperties to use IEvaluable
- Updated NodeSprite property setters to use IEvaluable
- Enables dynamic property definitions
New filtering infrastructure
- Added generalized filters, create with flare.util.Filter.$()
- Supports functions, type-checks, properties, and IPredicate expressions
Updated Scale package and handling
- Moved scale package to top-level
- Added flare.vis.data.ScaleBinding class to handle property-scale bindings
- Updated encoding and layout operators to use ScaleBinding
Updated shape handling
- Changed DataSprite.shape to be a string value
- Added shape drawing function registry to Shapes class
- Updated ShapePalette to provide shape names (strings)
Updated Operator Model
- Visualzation can now manage multiple named operators
- Visualization.update can now accept list of operator names
- The standard vis.operators also accessible as named "main" operator
- Added "enabled" flag to optionally disable operators
- Operators now support generalized parameter settings
Updated Axis handling
- Added lineCap properties for defining gridline overflow
- Updated labelOffset handling to place labels on either side of the plot
- Fixed axis bounds bug, bounds now animate correctly
- Updated Axis to initialize Number properties to zero
- Updated Axis with automatic determination of number of labels
Updated DataSprite methods and Rendering
- Added origin property - provides a movable zero point for polar coordinates
- Added hue, saturation, and value properties for DataSprite colors
- Added arrow endings for EdgeSprites to EdgeRenderer
- Added Displays class with "thumbnails" method to generate thumbnail images
- Added NodeSprite.sortEdgesBy method
- Added NodeSprite property setter methods for connected nodes/edges
- Fixed null shape bug in ShapeRenderer
- Added B-Spline rendering to Shapes
Various bugs fixes and tweaks
- Fixed inverse interpolation denominator bug
- Updated JSON Tokenize to treat line breaks as whitespace
- Changed Sort handling, descending sort order now specified by "-" prefix
- ForceDirectedLayout now handles null setter functions
- Fixed visitation check bug in GraphDistanceFilter
- Added textMode property to Legend
- Fixed angle distance bug in RadialTreeLayout
- Fixed collapse bug for wedges in RadialTreeLayout
- Fixed sizing errors in NodeLinkTreeLayout and Distortion
- Added endSize and endBounds to Transitioner
- Updated demos, added new standard applications