victory-line
Advanced tools
Changelog
32.0.0 (2019-02-27)
Horizontal Chart Improvements!
The goal of this change is to make it possible to turn any existing chart into a horizontal chart by adding the horizontal
prop to the chart without needing to alter any other props.
x
value always refers to the independent dimension, and the y
value always refers to the dependent dimension.VictoryAxis
components is no longer tied to whether or not they are the dependentAxis
Breaking Changes
Most Horizontal Charts
The change in how props with x and y values are treated (i.e. scale
, domain
, etc) will be a breaking change for most horizontal charts. In most cases, reversing the x
and y
values of props you are providing to your horizontal chart will be sufficient to correct the change. For example:
<VictoryChart horizontal scale={{ x: "log" }} domain={{ y: [4, 9] }}>
<VictoryBar
data={[
{ x: 5, y: 0.1 },
{ x: 6, y: 1 },
{ x: 7, y: 10 },
{ x: 8, y: 100 }
]}
/>
</VictoryChart>
Should be changed to:
<VictoryChart horizontal scale={{ y: "log" }} domain={{ x: [4, 9] }}>
<VictoryBar
data={[
{ x: 5, y: 0.1 },
{ x: 6, y: 1 },
{ x: 7, y: 10 },
{ x: 8, y: 100 }
]}
/>
</VictoryChart>
Props affected by this change are: scale
, domain
, maxDomain
, minDomain
, domainPadding
, and categories
Horizontal Charts with Event Containers
Dimension props such as brushDimension
have changed so that they always refer to the dimension of the target variable (x for the independent variable, and y for the dependent variable). For example, a VictoryBrushContainer
component with brushDimension="x"
will move and expand only in the independent dimension regardless of whether the chart is horizontal.
Props affected by this change are: brushDimension
, cursorDimension
, selectionDimension
, voronoiDimension
, and zoomDimension
Horizontal Charts with Custom dataComponents
The position values (i.e. x
, y
, x0
, y0
) supplied to custom dataComponents
from components like VictoryChart
will be scaled for the layout of the horizontal chart. Users who rely on these values may need to flip them or adjust them depending on their use case
Horizontal VictoryBoxPlot
Previously VictoryBoxPlot
required data to be flipped (x values flipped with y values) in order to plot horizontal charts. This is no longer required, and providing data in this format will no longer work correctly. To correct for this change, it should be sufficient to flip the data used in horizontal charts
Changelog
31.2.0 (2019-01-27)
Axis improvements
axisValue
prop for both cartesian and polar charts. This prop allows users to position an axis relative to a value on the opposite axis. Values may be given as numbers, dates, or strings. This prop only works for axis components when they are nested within VictoryChart
. Standalone axes can still be positioned using offsetX
and offsetY` props.Removes all deprecated lifecycle methods
componentWillReceiveProps
lifecycle methods and adds shouldComponentUpdate
logic for higher level components. Previously only the lowest level components performed sCU
checks.componentWillMount
with componentDidMount
bug fixes
Changelog
31.1.0 (2019-01-08)
1222 Bugfix: Avoid rendering null values on discrete data
1218 Bugfix: Ensure that calculated domains respect custom baselines for VictoryBar and VictoryArea
1202 Bugfix: Correct missing bar values
1208 Performance: Improve performance in addEventKeys
1211 Performance: Optimize stringMap calculations
1212 Performance: Optimize for preformatted data:
When data objects already contain _x
, _y
(and _y0
where appropriate) and have data accessor props like x="_x"
, data will no longer be formatted by Victory, but will be used as is.
Example:
<VictoryArea
data={[ { _x: 0, _y0: 1, _y: 2 } ...]}
x="_x"
y="_y"
y0="_y0"
/>
1209 Feature: Adds an animationWhitelist
property to the animate
prop. This property should be given as an array of strings. When this prop is given, only the prop names matching the array will be animated, and all other props will be instantaneously updates.
Example:
<VictoryBar
animate={{
animationWhitelist: ["data"]
}}
data={this.state.data}
style={{
data: this.state.style
}}
/>
When this property is not set, the static animationWhitelist
of any given component will be used.
Changelog
31.0.0 (2018-11-10)
radius
, innerRadius
, cornerRadius
, padAngle
, sliceStartAngle
and sliceEndAngle
for each individual slice of a pie:Details:
The Slice
primitive used by VictoryPie
now takes radius
, cornerRadius
, innerRadius
, padAngle
, sliceStartAngle
and sliceEndAngle
props. Each of these props may be given as number or a function of datum
and active
. padAngle
, radius
, cornerRadius
and innerRadius
will be passed down from props on VictoryBar
, but sliceStartAngle
and sliceEndAngle
must be defined directly on the Slice
instance, These values should be given in degrees. To make these values easier to use as functional props, startAngle
, endAngle
, and padAngle
(in degrees) are added to each datum
passed into Slice
. (If your data already has these properties they will not be overridden)
Breaking Changes
The Slice
primitive will still take a pathFunction
prop, but this prop will no longer be provided by VictoryPie
. This will not be a breaking change for most users. This will only affect users who were wrapping the Slice
component and making use of the pathFunction
prop provided by VictoryPie
Users who were providing their own pathFunction
prop to Slice
should not be effected.
Changelog
30.3.0 (2018-08-24)
VictoryVoronoiContainer
label function. Thanks @evsheino