Skip to content

Releases: patrykandpatrick/vico

v1.1.0

07 Jun 17:59
923c188
Compare
Choose a tag to compare

Additions

  • chart axis titles

API changes

  • The TextComponent#rotationDegrees field has been removed. The rotation of a TextComponent is now specified via the rotationDegrees parameters of TextComponent#drawText, TextComponent#getWidth, TextComponent#getHeight, and TextComponent#getTextBounds. For components that require a TextComponent instance, the rotation of the TextComponent can be specified via the parent (for example, Axis now has a labelRotationDegrees field).

Resolved issues

  • Charts that werenʼt scrollable could be rendered incorrectly (#90).
  • In right-to-left layouts, TextComponent positioned itself incorrectly if TextComponent#horizontalPosiiton was equal to HorizontalPosition.Start or HorizontalPosition.End.

v1.0.0

29 May 12:32
Compare
Choose a tag to compare

This version includes the following changes.

Additions

  • chart legends
  • data labels

API changes

  • In the view module, the line*spec attributes of LineChartStyle have been renamed to line*Spec (note the capitalization).
  • AxisValueFormatter now inherits from ValueFormatter, which is used for data labels. The return type of ValueFormatter#formatValue is CharSequence (as opposed to String).
  • There were mix-ups between HorizontalPosition.Start and HorizontalPosition.End as well as VerticalPosition.Top and VerticalPosition.Bottom in several places. These have been resolved.

Resolved issues

  • In line charts, points could be clipped near the top and bottom of the chart.

Improvements

  • In the compose module, the text function now uses remember to help prevent the unnecessary creation of new TextComponent instances.

v1.0.0-beta.1

22 May 12:31
e8cf434
Compare
Choose a tag to compare
v1.0.0-beta.1 Pre-release
Pre-release

This version includes the following changes.

Additions

  • ColumnChart and LineChart instances can now define a targetVerticalAxisPosition. This property allows for the charts and vertical axes in a ComposedChart to be independently scaled (#73).
  • A single LineChart can now display multiple lines when supplied with a ChartEntryModel containing multiple datasets.
  • The view module has new lineChart() and columnChart() functions that create LineCharts and ColumnCharts, respectively, using theme and style attributes.

Resolved issues

  • During the measuring phase, HorizontalAxis didn’t provide the TextComponent instance used for axis labels with a maximum width. This could lead to faulty truncation behavior (#77).
  • TextComponent instances with a custom rotation value and a maximum width could display faulty truncation behavior (#77).
  • Persistent markers added to a Chart contained in a ComposedChart were clipped.

API changes

  • ChartModel has been renamed to ChartValues for clarity.
  • LineChart’s constructors now accept a single LineChart.LineSpec or a List of LineChart.LineSpecs. LineChart.LineSpec defines the style of a single line in a line chart. See also the second point in “Additions.”
  • Changes have been made to how line charts are customized via ChartStyle to account for the addition of the ability to display multiple lines in a single LineChart. See also the second point in “API changes” and the second point in “Additions.”

Improvements

  • In the view system, charts are now scrollable and zoomable by default.

Dependency updates

  • All modules use Kotlin 1.6.21.
  • compose, compose-m2, and compose-m3 use Jetpack Compose version 1.2.0-beta02.
  • compose-m3 uses compose.material3 version 1.0.0-alpha12.

v1.0.0-alpha.3

24 Apr 19:55
Compare
Choose a tag to compare
v1.0.0-alpha.3 Pre-release
Pre-release

This version introduces the following changes.

Additions

  • A composedChartEntryModelOf function for creating ComposedChartEntryModels.
  • A ChartEntryModel#plus function for creating ComposedChartEntryModels.

Improvements

  • verticalGradient is no longer a composable function.

Resolved issues

  • Charts were drawn incorrectly if the layout direction was right-to-left.
  • Charts created via the Chart composable werenʼt scrollable if marker was null.
  • Line charts were drawn incorrectly if minY or maxY was overridden.
  • In line charts, the line was clipped near the top and bottom of the chart.
  • The strokeColor parameter of the ShapeComponent constructor wasnʼt respected.
  • Marker guidelines could be off-center relative to their corresponding chart entries.
  • In DashedShape, if dashLengthDp and dashGapDp were both set to 0f, an infinite loop would occur.

Dependency updates

  • All modules use Kotlin 1.6.20.
  • compose, compose-m2, and compose-m3 use Jetpack Compose version 1.2.0-alpha08.
  • compose-m3 uses compose.material3 version 1.0.0-alpha10.

v1.0.0-alpha.2

18 Apr 15:08
Compare
Choose a tag to compare
v1.0.0-alpha.2 Pre-release
Pre-release

This version introduces the following changes.

Additions

  • A tintDrawable parameter in drawableShape.
  • XML attributes for the positions of labels along vertical axes and the rotation of axis labels.
  • Default values for the density, fontScale, and isLtr parameters of drawContext.

Resolved issues

  • The drawing of some labels along vertical axes could be wrongly skipped.
  • The shadows of persistent markers were clipped.
  • Vertical axes could display a label of negative zero.
  • Top horizontal axes were drawn too high up.
  • drawableShape was distorted in some cases.

Other

  • DefaultAxisFormatter is now called DefaultAxisValueFormatter.

v1.0.0-alpha.1

05 Apr 20:03
Compare
Choose a tag to compare
v1.0.0-alpha.1 Pre-release
Pre-release

This is the initial release of Vico.