Skip to content

Releases: nteract/semiotic

Annotation & Brush Bug-Squashing

21 Jan 03:13
Compare
Choose a tag to compare

FIXES

  • Updating note props wouldn't cause the note to rerender (thanks @torioLuz!)
  • Brushing could return null extent, failing the destructuring default (in the docs even!)

Smarter Tooltips, Clean Up Logging Issues

15 Nov 20:16
Compare
Choose a tag to compare

Minor release (the real work is going on in the semiotic-2 branch) that adds some functionality thanks to @torioLuz and otherwise just cleans up some minor logging bugs

FEATURES

  • Outbound tick lines option (@torioLuz could you make a PR to document this on semiotic-docs and/or a codepen or other to show how to use it?)
  • Add more tooltip attributes to improve tooltip behavior (@torioLuz could you make a PR to document this on semiotic-docs and/or a codepen or other to show how to use it?)

FIXES

  • Remove console log from OrdinalFrame

React 16.8+ Compatibility

06 Oct 20:01
Compare
Choose a tag to compare

Semiotic 2.0 deprecates a lot of old compatibility props, removes the download button and gets rid of deprecated lifecycle events. It should also (hopefully) take advantage of some of the newer React features. Please take a look and file any issues you discover.

  • DownloadButton is gone. It provided some convenience and much hassle and my philosophy on how to handle exporting data is that it should be a case-by-case feature handled outside of the dataviz framework.
  • Since everyone didn't always want to render with sketchy rendering it's optional now, so to enable sketchy rendering you will need to import Rough or a Rough-like library and pass it to your frame using the sketchyRenderingEngine prop. So something like:
import roughjs from "roughjs/dist/rough.es5.umd.js"
<XYFrame 
   sketchyRenderingEngine={roughjs}
/>
  • Old names for props (like areas in XYFrame which was replaced by summaries) are no longer honored.
  • react15Wrapper is removed from FacetController since React 15 is no longer supported
  • wordcloud has been removed from NetworkFrame it was never a very good word cloud

Other changes should be coming. If you have any suggestions just let me know. Bugfixes to 1.X will, of course, continue.

Fix UMD, custom OrdinalFrame type

03 Sep 02:03
Compare
Choose a tag to compare

FIXES

  • UMD build wasn't working with d3-require (thanks @mbostock)
  • Annotations wouldn't update if you change the label (thanks @mph006)
  • Custom type (where you send a function) wasn't working if you sent back an array of SVG elements

Calculate Extent with Annotations Included

29 Jul 22:00
Compare
Choose a tag to compare

FIXES

  • Annotations in FacetController might not have been displayed prior to an interaction (thanks @susielu!)
  • Invert extent wasn't being honored in FacetController (thanks @susielu!)
  • Area annotation wasn't properly offset in XYFrame

FEATURES

  • Honor optimizeCustomTooltipPosition in OrdinalFrame (thanks @torioLuz!) this allows you to change the tooltip position based on positive and negative data and whether it gets close to the edges.
  • Extent objects now honor a includeAnnotations option (which takes true or false) which if set to true calculates the extent of the frame based not only on the data but also on simple annotations (any annotation types that use the data attributes like xy, x, y, react-annotation, not bounds or coordinates or anything like that).

Fix Download Button, Column Brushing, Add Orphan Points

24 Jun 17:29
Compare
Choose a tag to compare

FEATURES

  • In NetworkFrame in motifs mode you can now set a padding prop for your networkSettings that determines the number of pixels between each group.
  • XYFrame now supports filterRenderedLines and filterRenderedSummaries which allows you to remove lines or summaries after they have been calculated so that the extent and other aspects of the chart are based on the complete dataset
  • showLinePoints now honors an "orphan" setting that will only show line points if a point has an undefined point immediately before and after that point. This means it will only have any kind of effect if you have defined set but when you do, it lets you show a floating point as a point so that it's not lost in the way a line renders.
    Screen Shot 2019-06-24 at 10 22 54 AM

FIXES

  • The download feature should be working again
  • Column brushes in vertical projection would hang if there were no zero values among your columns (so for instance in a parallel coordinates setting)

Torn Baseline

10 Apr 19:23
Compare
Choose a tag to compare

FIXES

  • As expected, the TypeScript migration introduces a few issues and these seem to all be ironed out now (hence the lack of release notes since 1.19.1 as things get ironed out.
  • FacetController had issues when one of the child frames had no data.

FEATURES

  • Full docs on how to better style your axes at https://semiotic.nteract.io/guides/axis
  • Axes can now display a jagged base tick for you to use in non-zero baseline situations (this was historically a best practice half a century ago and seems useful to bring back) You can accomplish this by setting an axis prop: jaggedBase: true

Screen Shot 2019-04-09 at 6 50 26 PM

* `baseline: "under"` support for drawing the neatline of an axis under the viz layer (by default it's drawn above it) * Documentation for cluster/grouped bar charts at https://semiotic.nteract.io/guides/bar-chart * `OrdinalFrame` pieces are now decorated with an `rName` prop that corresponds to the string name of an accessor sent to `rAccessors` and is useful in tandem with arrays of accessors. * The container div for frames in OrdinalFrame is now decorated with the value of `projection` as a className

OTHER

  • More tests! Please feel free to submit PRs for tests there are so many open issues related to this and I'm trying to handle them as they come up but if someone wants to start building a more robust set of tests then please let me know. We also need to expose the types in a sensible way and always need more docs.

TypeScript, Marginal Graphics, Trend Lines

22 Mar 18:29
Compare
Choose a tag to compare

UPDATES

  • Semiotic is now in typescript, though there's a lot to be done to clean it up and remove the various any or as unknown as somethingElse going on in there. PRs welcome! Thanks to @captainsafia for her help with this.

FEATURES

  • XYFrame has a new summaryType: "trendline" that will show trendlines using regression.js. You can see the documentation on how to use it at the bottom of the XY Plot Guide.

Screen Shot 2019-03-22 at 11 26 58 AM

* XYFrame supports marginal summary graphics via a `marginalSummaryGraphics` prop of any passed axis. You can see the [documentation on how to use them here](https://semiotic.nteract.io/examples/marginal-graphics).

Screen Shot 2019-03-22 at 11 27 12 AM

Moving to nteract!

04 Mar 19:58
Compare
Choose a tag to compare

As some of you know already, Semiotic is now moving into the nteract project (https://github.com/nteract). So this release is just about updating the docs and pointing you to the new amazing docs written by @susielu! Please reach out if you see any issues.

areaType->summaryType

28 Feb 19:17
Compare
Choose a tag to compare

I was expecting to do the next minor version bump when the docs release and Semiotic gets moved into the nteract org (which should happen next week) but this last batch of changes was just too much, and I don't want to gatekeep it, so 1.18.0 will have to be the nteract release. This one has quite a few things:

#CHANGES

  • A few versions back, areas in XYFrame was renamed summaries (though it's all backward compatible under the hood) but there were still computed class names and other bits that still said area that now say summary
  • oSort replaces sortO in OrdinalFrame

FEATURES

  • custom hover behavior in ordinal frame passes summary props, like boxplot points (thanks @torioLuz!)
  • FacetController now supports arrays of hoverAnnotation or pieceHoverAnnotation just like the regular frames
  • minimap in MinimapXYFrame now inherits style, class and render props from the parent frame
  • area nodes (like sankey and dagre nodes) in NetworkFrame now have a zoomedWidth and zoomedHeight to reflect their zoomed size
  • OrdinalFrame accepts an axes prop like XYFrame
  • brush extent is always returned sorted so that the y values are [min, max].

FIXES

  • column-hover in OrdinalFrame now passes proper screenCoordinates if you want your own html annotation based on that
  • FacetController wasn't always updating the extents properly if you deleted a frame or only changed data in one of your frames or swapped out all your frames for new ones
  • FacetController was duplicating annotations on the hovered frame
  • NetworkFrame was duping nodes that were sent in as object references of edge source-target keys
  • Network data sometimes was being mutated so you would see weird effects on your frames if you used the same data in multiple frames
  • All the custom generators (customPointMark, customNodeIcon, customMark, etc) should be sent the same kind of data in the same pattern (obviously with scales and frame-specific stuff being different in different frames)
  • display names for spark frames match up with the component names