Skip to content

Releases: ContextLab/hypertools

v0.3.1 (August 2017)

11 Aug 20:46
Compare
Choose a tag to compare
  • suppress warning when attempting to switch to TkAgg backend

v0.3.0 (June 2017)

14 Jun 14:21
Compare
Choose a tag to compare

This release extends hypertools to support the following dimensionality reduction / manifold learning models:

  • PCA
  • FastICA
  • IncrementalPCA
  • KernelPCA
  • FactorAnalysis
  • TruncatedSVD
  • SparsePCA
  • MiniBatchSparsePCA
  • DictionaryLearning
  • MiniBatchDictionaryLearning
  • TSNE
  • MDS
  • SpectralEmbedding
  • LocallyLinearEmbedding
  • Isomap

The default reduction algorithm was switched from PCA to IncrementalPCA for better handling of large datasets.

Bugs squashed:

  • fixed plot_procrustes example so that rotation matrix is orthonormal

v0.2.1 (June 2017)

05 Jun 13:49
Compare
Choose a tag to compare

The work for this update was done during the Mozilla Global Sprint 2017. Thank you @alysivji and @rarredon for your contributions! Thanks @stephwright and the Mozilla Open Science Team for organizing an awesome event!

New Features:

  • If legend is not explicitly given, it can be computed implicitly by passing legend=True
  • Align flag added to hyp.plot function
  • Align flag added to hyp.tools.reduce function
  • Reduce flag added to hyp.tools.align and hyp.tools.procrustes functions
  • Align and reduce flags added to hyp.tools.load function
  • Updated examples with new syntax

Bugs Squashed:

  • Fixed import bug for saving animations
  • Fixed bug in align function where an extra column(s) of zeros were appended to data before alignment if ndims<=2

v0.2.0 (May 2017)

31 May 21:53
Compare
Choose a tag to compare

new features, new code organization and also some style changes!

Key changes:

  • The way we handle args. Now, all keywords are handled explicitly, instead of unpacking them using the **kwargs syntax. This makes the code much cleaner, and easier to parse arguments.

  • The organization of the plotting code. I eliminated the separate static and animate code bases, bc there was a lot of redundant code and handling args was a mess. its now organized into a plot function, which is the main plotting function that also handles data manipulation prior to plotting, and a draw function, which handles all static and animated drawing.

  • Plot styling. All styles are now consistent, the static plots are now the same as the animated plots. Also, all lines/points are thinner.

  • New keyword arguments to the plot function:
    +fmt in 0.1.0, format strings were handled as arguments, but now they are passed as a kwarg. since the fmt kwarg is the first param after the data, the API in 0.1 and 0.2 is the same, except in 0.1 format strings could be passed in any position, and now they must be passed immediately after the data.
    +title can be passed to add a title to the plot
    +elev can be passed to change the elevation of the plot. useful for static plots in jupyter notebooks
    +azim can be passed to change the azimuth of a plot. useful for static plots in jupyter notebooks
    +precog is an animation only feature which plots a low-opacity trace ahead of the data (similar to chemtrails but in the opposite direction.
    +bullettime (animation only) is the same as the combinations of precog and chemtrails
    +animate='spin' will create a "static" plot (i.e. all the data is plotted at once) that rotates
    +return_data has been eliminated. the data is now always returned by default

Minor changes:

  • changed 'weights' example data from 3D numpy array to list of 2D numpy arrays
  • updated examples for new 'weights' data format
  • remove docs _build folder from repo
  • added requests to setup.py file
  • remove rogue class from init file

Bugs fixed:

if the rank is of the input matrix is smaller than the number of dimensions requested, the reduce function will now pad the reduced data matrix with ndims-rank columns of zeros.

v0.1.7 (April 2017)

17 Apr 19:30
Compare
Choose a tag to compare

Enhancements:

  • added load function to load in example data
  • moved example data out of repo to google drive

Bugs squashed:

  • added missing import sys statement to helpers.py
  • fixed bug with in example scripts dealing with missing data
  • fixed bug that caused software to crash when using PPCA
  • fixed bug in readthedocs build caused by empty toctree

v0.1.6 (February 2017)

23 Feb 21:51
Compare
Choose a tag to compare
  • fixed bug where group kwarg caused code to crash on some systems
  • fixed bug where requirements still listed matplotlib <2.0, even though it is supported
  • patched bug where tail_duration would crash if not an integer value
  • added warning to align function when n features exceeds n samples

v0.1.5 (February 2017)

06 Feb 13:46
Compare
Choose a tag to compare
  • Added support for maplotlib 2.0
  • Added future package to setup.py so its automatically installed

v0.1.4 (February 2017)

06 Feb 00:33
Compare
Choose a tag to compare
  • Support for Python 3.4+

v0.1.3 (February 2017)

03 Feb 18:29
Compare
Choose a tag to compare

Bugs fixed:

  • patched bug where future division was not being imported into align, procrustes and srm functions
  • fixed bug where category labels could be returned out of order because of set

v0.1.2 (February 2017)

02 Feb 20:12
Compare
Choose a tag to compare

changes:

  • added docstrings to all public functions
  • added sphinx-generated documentation of API with examples
  • modified the examples so they are compatible with sphinx-gallery
  • simplified readme

bugs fixed:

  • patched bug where matplotlib 2.0 could be used (working on this for next release)
  • patched bug where procrustes function uses dimensionality reduction during alignment by default