cd7cbb8 Jan 15, 2017
95 lines (77 sloc) 5.12 KB

Androidplot Versioning

For details on what to expect in general when updating to a new version of Androiplot, check out the versioning doc.


  • (#26) Fixed an NPE issue when drawing null values with a PointLabeler.
  • Fixed a broken link in Quickstart doc.


  • Moderate refactor of PieRenderer. Documentation has been updated to reflect these changes.
  • Major refactor of BarRenderer. Documentation has been updated to reflect these changes.
  • Added ScalingXYSeries which wraps other instances of XYSeries to be dynamically scaled. This is particularly useful for creating animated intros using XYSeries data.
  • Added AnimatedXYPlotActivity demonstrating the use of ScalingXYSeries to create an animated intro.
  • XYPlot.getXVal(..) and XYPlot.getYVal(...) methods have been deprecated and will be removed in 1.5.0. XYPlot.screenToSeries(...) and XYPlot.seriesToScreen(...) should be used instead.
  • Domain and range cursors are now disabled by default. To enable, set a valid cursor position using XYGraphWidget.setCursorPosition(float, float). Cursor position values are expressed in screen coordinates; you can convert between screen and series values using XYPlot.screenToSeries(...) and XYPlot.seriesToScreen(...).


  • Added NormedXYSeries wrapper to simplify the process of normalizing xy series data.
  • Added DualScaleActivity demonstrating NormedXYSeries usage to present dual range scales.
  • LineAndPointRenderer options for cases where two or mode series' of different size have been added.
  • Fixed a bug causing points scrolled off-screen to occasionally accumulate and render along the left edge of the graph.
  • Fixed a bug that could cause render jitter when extreme zoom levels were applied.
  • Fixed a bug that prevented PanZoom from working properly on plots with an undefined outer limit.


  • Added sampling support. See the Advanced XY Plot doc for details.
  • PanZoom performance enhancements & bug fixes. If you're currently using PanZoom you'll likely need to update your code as the interface has slightly changed.
  • Added leakcanary to DemoApp for debug builds.
  • More unit test coverage
  • Fixed a bug that prevented an instance of a given series from being added more than once, even when a unique formatter is supplied.
  • Added Formatter.getLegendIconEnabled() and Formatter.setLegendIconEnabled(boolean), used to enable / disable drawing legend items for individual series / formatter pairs.
  • Added XYGraphWidget.Edge.NONE to be used with XYGraphWidget.setLineLabelEdges(Edge...) to disable all edges.


  • BarRenderer / BarFormatter cleanup
  • More documentation!
  • Bounds and XYBounds have been merged into Region and RectRegion respectively.
  • ValPixConverter has been removed and it's functionality migrated to Region and RectRegion.
  • Added Region.transform(...) and RectRegion.transform(...)
  • Added Region.ratio(...) and RectRegion.ratio(...)
  • XYPlot.getCalculatedMinX(), XYPlot.getCalculatedMaxX(), XYPlot.getCalculatedMinY() and XYPlot.getCalculatedMinY() have been replaced with XYPlot.getBounds().
  • Configurator has become it's own library - Fig!
  • New constructors have been added to Formatters to simplify XML configuration via Fig.
  • Added Jacoco code coverage reporting


Pie Chart Enhancements

Pie chart has been updated with new methods and format attributes to improve segment selection and highlighting functionality:

  • Added offset, radialInset, innerInset and outerInset properties to SegmentFormatter.
    See the pie chart documentation for usage details.
  • Updated PieRenderer to support the new SegmentFormatter properties.
  • SimplePieChartActivity has been updated to provide an interactive demo of some of these new features.


  • Added Plot.getListeners() method.
  • Added FastLineAndPointRenderer, updated OrientationSensorExampleActivity to use it.
  • Updated to target SDK 24, removed sdkmanager dependency, and other misc. updates to project deps etc.
  • Lots of additions and updates to documentation
  • Added CircleCI support


  • Added drawGridOnTop param to XYGraphWidget; when set to true, grid lines will be drawn on top of rendered series data. (default is false)
  • Added PanZoom class providing one-line configuration of pan/zoom behavior for instances of XYPlot. See TouchZoomExampleActivity for a usage example.
  • Removed InteractiveXYPlot as PanZoom makes it obsolete.


This is a factor of several core elements of the Androidplot lib. The general theme was to make class and method names more intuitive and to make xml styling more powerful.

  • Major refactor of XYGraphWidget
  • Tick renamed to Line
  • Extensible Label Formatters
  • getXXXWidget methods renamed to simply getXXX
  • Per-edge tick extensions
  • Moved documentation into vcs. Docs from 1.0 forward will be maintained here. (TODO)
  • plot label xml param renamed to title