Releases (245)
layerchart@2.6.0
Minor Changes
-
feat(Contour): Stroke unfilled contours in the bands' colors when no
strokeis given (#934) -
feat(Frame|Grid|Axis|Highlight): Draw an
isometricchart's back walls, their gridlines (<Grid z>), a height axis (<Axis placement="back">), and highlights at a point's height (#934) -
feat: Support
zheights on anisometricchart — boxes (Rect,Cell,Calendar,BarswithvalueAxis="z"), floatingCircle,Text,LabelsandArcLabel,Linestems, and extrudedPolygon,Path,GeoPath,Contour,Pie,AreaandSpline(#934) -
breaking(Chart|Spline|Area): Rename the
zgrouping channel tog(ex.<Spline g="id">), freeingzfor a third position (#934) -
feat(TransformContext): Switch
modewithout remounting the chart (#934) -
feat(Chart): Support
view={isometric}to draw the plot area as a floor seen at an angle, turned withisometric({ rotate, tilt })or by dragging (transform={{ drag: 'rotate' }}), withviewporttext facing the viewer (#934) -
feat(Ellipse): Support
rotateto turn the ellipse about its center (#934)
Patch Changes
-
fix(TransformContext): Zoom in / out about the middle of the plot area, and center a
canvaszoom without resetting its scale (#934) -
fix(GeoPath): Start a tweened map shape as itself rather than rising from a baseline (#934)
-
fix(Axis): Size an
angleaxis' ticks by its circle rather than the chart's width, so a continuous angle scale's tick count no longer changes with width (square charts get more ticks) (#934) -
fix(Link): Draw links whose ends share an
xory(#934) -
fix(BrushContext): Draw and measure the brush through a
canvaspan / zoom (#934) -
fix(TooltipContext): Account for
transform.mode: 'canvas'pan / zoom in bisect modes and'data'tooltip placement (#934)
layerchart@2.5.2
Patch Changes
- fix(ArcChart|AreaChart|BarChart|LineChart|PieChart|ScatterChart): Support
bind:ref, andbind:contexton the.svg/.canvasvariants (#930) (#931)
layerchart@2.5.1
Patch Changes
-
fix(Tooltip): Keep a flipped tooltip inside the container (or window) when flipping overflows the other edge (ex. a start-aligned tooltip wider than half a narrow chart opened past its left edge) (#924)
-
fix(TooltipContext): Keep a tooltip locked from
onclickon touch (a tap'spointerleaveprecedesclick, and its pending hide cleared the data under the lock), and hide it once unlocked if the pointer left while locked (#924)
layerchart@2.5.0
Minor Changes
- feat(Group|Hull|Rule): Support
seriesKeyprop to fade the mark while another series is highlighted and remove it while the legend has that series hidden (#917)
layerchart@2.4.1
Patch Changes
-
fix(deps): Bump
@layerstack/*dependencies to fixPackage subpath is not defined by exportswhen bundling without Vite (issue #913) (#915) -
fix(Spline): Render
startContent,endContent,markerStart, andmarkerEndonce per line rather than once per style-split segment (#914) -
fix(Spline): Keep the line's color on segments split by a
class,opacity, orfillfunction (#914) -
fix(Spline): Animate segments split by a style function, which
motionpreviously skipped (#914)
layerchart@2.4.0
Minor Changes
-
feat(Axis): Add
tickOcclusionto drop ticks whose labels would overlap, measured at the size they render (including rotation), withpriorityof'end'(default),'start', or'start-end'to choose which survive (#909) -
feat(utils): Add
rotateand multiline support togetTextRect, so a rotated or stacked<Text>can be measured foroccludewithout the caller reproducing<Text>'s pivot (#909)
Patch Changes
-
fix(Area): Apply
mask,filter, andclip-pathto thelinepath as well as the fill (unless overrideden byline={{...}}) (#909) -
fix(Calendar): Adjust month labels after recent Text verticalAnchor improvements (#909)
-
fix(Calendar): Size cells to fit
monthPath, which can extend past the last cell when the range ends mid-month (#909) -
perf(Chart): Measure the container before building the subtree, so marks are only built once (#909)
-
fix(downloadImage, downloadSvg): Inline
stop-color/stop-opacityso gradients don't export as solid black (#909) -
fix(Chart): Return
undefinedfromxGet/yGetwhen that axis has no accessor, instead of throwingaccessor is not a function(#909) -
fix(Spline, Area): Animate each path when the mark is split by
z, whichmotionpreviously skipped — segments split by a style function are still redrawn outright (#909) -
fix(Path, Spline): Render
endContentwithout adrawtransition (#909)
layerchart@2.3.1
Patch Changes
-
perf(Chart): Resolve a plain-key accessor (
x="date") directly instead of re-parsing the path string (#906) -
fix(Chart): Treat an explicit but empty
seriesarray as authoritative, rather than deriving implicit series from marks (#906) -
perf(Chart): Keep the value domain off the mark registry, so mounting a chart no longer rebuilds its scales — and every path drawn from them — once per mark registered (#906)
-
fix(Highlight): Fix crash highlighting
c-grouped points over nested chart data (#906) -
fix(Highlight): Mark only the hovered row in
quadtree/voronoitooltips, rather than every row sharing its position (#906) -
feat(Chart): Take the color channel from a mark's own
fill/stroke(<Circle fill="island">) when nocis declared (#906) -
fix(Tooltip): Center on internal when data snapping (instead of on its leading edge) (#906)
-
fix(Tooltip): Fix persistent tooltip when rendered outside Chart container and
pointerEventsis enabled (#906)
layerchart@2.3.0
Minor Changes
-
feat(ChartGroup): Add
<ChartGroup>andChartGroupStateto synchronize the tooltip/highlight, brush selection, zoom domain, and series highlight/visibility across charts (#901) -
feat(Chart): Add
fx/fyfaceting, drawing the chart once per distinct value into a grid of panels that share the position scales (#901) -
feat(Chart): Add
seriesLayout="auto"(default) with automatic stacking when applicable (ex. Area, Bars). Can still pass explicitseriesLayout(ex.overlap,group,stack) when needed (#901) -
feat(Bar|Bars): Accept a per-row accessor for
fillOpacity,strokeWidth, andopacity, matchingRectandCircle(#901) -
feat(Spline|Area): Resolve
stroke,fill,opacity, andclassper line/area (and segment). A string naming a data property now resolves through the chart's color scale, like other primitives (ex.Circle) (#901) -
feat(Chart): Default the color scale to the colors declared on
series, so marks match their legend swatch (#901) -
feat(Legend): Support ordinal
cscale similar toseriesincluding highlight and filter capability. An ordinal scale now draws labelled swatches rather than a color ramp — passvariant="ramp"for the old appearance (#901) -
feat(Tooltip): Add
tooltip.show({ point, value, data })to control tooltip programmatically (buttons, keyboard events, etc.) (#901) -
feat: New Brush component to manually position, useful for multiple / independent brushes (ex. parallel coordinates). Also includes new
brushableattachment andbrushGesturehandler for even more granular control ofBrushState(#901) -
feat(AnnotationPoint|AnnotationLine|AnnotationRange): Support
seriesKeyprop to associate an annotation with a series, positioning points and lines on its stacked segment (#901) -
feat(Chart): Add
idprop, applied to the root element and identifying the chart within aChartGroup(#901) -
feat(Rect): Support
refin html layers and forwardpointerdownin canvas layers (#901) -
feat(Spline|Area): Add
zaccessor to draw one line/area per distinct value, defaulting tostroke/fill/c(#901) -
feat(Spline): Support
seriesKeyprop to follow that series' stacked top (#901) -
feat(Chart): Add
transform.initialDomainto open a chart zoomed to a range (#901)
Patch Changes
-
fix(BrushContext): Fix clearing on double-clicking the selection (root select-all was immediately undoing) (#901)
-
fix(PieChart): Stop drawing a cartesian grid behind the arcs when using
series(#901) -
fix(Chart): Stack each
x1sub-band separately, so grouped-and-stacked bars no longer share one running total (#901) -
fix(Chart): Apply
zoomToBrush()when called before the chart mounts or when the scale clamps toscaleExtent(#901)