Skip to content

Releases: nteract/semiotic

Annotation Interactivity

21 Nov 06:01

Choose a tag to compare

Big Changes

  • areas in XYFrame is a problematic term, since it conflates with stacked areas and other things that are handled by lines. As of 1.16 they've been renamed to summary so all the existing areaClass, areaStyle, areas and so on will be summaryClass, summaryStyle, summaries and so on. This is not a breaking change (only a minor version bump) because the area terminology is still honored for backward compatibility.

Features

  • A summaryType with type set to ridgeline will now accept string curve props along with d3-shape curves, matching functionality in XYFrame
  • Bumpline starts counting at 1 instead of 0 so you get a more semantically meaningful rank description. It also flips the extent by default, so Rank 1 is on top.
  • ridgeline summary types in OrdinalFrame will now honor an axis prop in the summaryType and display an axis for each summary, like histogram
  • Pass voronoiHover to annotation rules, this allows you to fire off tooltips using Semiotic's built-in system (though you still need to enable pointer-events on any items you want to fire events from)
  • OrdinalFrame honors an ordinal-line annotation type to allow people to compose bar+line charts with interactivity on the line portion
    bar-line-chart-semiotic

See the example at the bottom of the Creating Bar Chart page for how to use ordinal-line. More interactive annotation types should be coming and you can experiment with using voronoiHover on your custom annotations.

https://emeeks.github.io/semiotic/#/semiotic/creatingbarchart

Square Root Bar Charts?

18 Nov 05:11

Choose a tag to compare

CLEANUP

  • d3-shape bump version to ^1.2.0

FIXES

  • Passing updated point data wouldn't always trigger an XYFrame update

FEATURES

  • Axis now has a dynamicLabelPosition prop that needs to be set to true to enable the bounding-box based collision detection to adjust labels (introduced in an earlier version) because of performance issues with automatically running this for every Axis.
  • OrdinalFrame's rScaleType will now take an instantiated scale (matching XYFrame) so you can make scales with settings (like scaleExp) like you can with XYFrame.
  • XYFrame supports an area lineType that sets the y1 accessor to () => 0 for easy line area charts.
  • Styling of OrdinalFrame pieces now passes the calculated props of the piece so you can use oIndex and rIndex to style pieces made by multiple accessors
  • Bar pieces now have a minimum size of 0 px instead of 1px, which caused weird issues with rendering offset

Arcs, Matrices & accessor index

05 Nov 22:57

Choose a tag to compare

Features

  • In XYFrame, points and lines are decorated with xIndex, yIndex, lineIndex corresponding to the array position of xAccessors, yAccessors and lineAccessors. Likewise, OrdinalFrame decorates pieces with rIndex and oIndex which correspond to which of the accessors generated them.

  • NetworkFrame has a new matrix type that creates an adjacency matrix.
    screen shot 2018-11-05 at 2 44 13 pm

  • NetworkFrame has a new arc type that creates an arc diagram.
    screen shot 2018-11-05 at 2 40 34 pm

Little Fixes

30 Oct 03:17

Choose a tag to compare

FIXES

  • Connector styling in OrdinalFrame sends data and drawing element
  • NetworkFrame sends decorated data object to HTML annotation function
  • customPointMark in XYFrame had issues with being sent elements rather than functions returning elements
  • NetworkFrame sends decorated data object to the separation nodeSizeAccessor for tree diagrams

Precalc Bins, Node Size in Trees

23 Oct 17:29

Choose a tag to compare

Features

  • NetworkFrame in tree or cluster will take nodeSizeAccessor into account when calculating the separation value for nodes. Note that this can have strange effects if your total node size for a row/column is larger than the size of the viz.
  • heatmapping and hexbinning are exposed as functions so you can precalc your bins to find max values and optimize performance

screen shot 2018-10-23 at 10 17 11 am

ForegroundGraphics fix in OrdinalFrame

23 Oct 17:30

Choose a tag to compare

Fixes

  • OrdinalFrame generates its foregroundGraphics slightly differently than the other two frames, so it wasn't honoring the new foregroundGraphics as a function thing

foregroundGraphics/backgroundGraphics accept functions

18 Oct 16:31

Choose a tag to compare

Features

  • foregroundGraphics and backgroundGraphics will now take a function of type ({ size, margin }) => <JSX-SVG /> so you can properly size your foreground and background graphics with responsive frames.

Fixes

  • Default tooltip content for edges was showing "source id to source id" instead of "source id to target id".

Edge Highlighting

18 Oct 16:29

Choose a tag to compare

Features

  • NetworkFrame highlight annotation works for edges. The edge annotation needs to have edge: true and source and target objects that have IDs that correspond to your nodeIDAccessor

Fix 0 value point tooltips

15 Oct 20:47

Choose a tag to compare

FIXES

  • Points with a value of 0 were incorrectly showing the position of the tooltip

FEATURES

  • heatmap and hexbin area types honor a binMax property that takes a callback and returns the maximum binned value (for use with legends, for instance)

multi-x

26 Sep 03:25

Choose a tag to compare

Features

  • In XYFrame you can pass an xAccessor that returns an array of values for things like horizontal candlestick charts. This would probably cause extreme weirdness if used for lines or areas but if you have an idea of how or why that would work, feel free to file an issue.

screen shot 2018-09-25 at 8 19 10 pm

Fixes

  • OrdinalFrame and NetworkFrame have canvas interaction disabled to allow for SVG-based interactivity when rendering with canvas. Canvas interaction (like the kind found in XYFrame) will come in a future release for these frames.