Recent Releases of mpl-interactions
mpl-interactions - 0.24.2
What's Changed
- Update set_max() function in widgets.py by @ispurgeo in https://github.com/mpl-extensions/mpl-interactions/pull/292
- FIX: don't use custom rangeslider anymore by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/294
New Contributors
- @ispurgeo made their first contribution in https://github.com/mpl-extensions/mpl-interactions/pull/292
Full Changelog: https://github.com/mpl-extensions/mpl-interactions/compare/0.24.0...0.24.2
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 1 year ago
mpl-interactions - 0.24.1
Release for Zenodo DOI
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 2 years ago
mpl-interactions - 0.24.0
Release for JOSS paper
What's Changed
- test: update tests for newer mpl by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/287
- chore(deps): bump actions/checkout from 3 to 4 by @dependabot in https://github.com/mpl-extensions/mpl-interactions/pull/286
New Contributors
- @dependabot made their first contribution in https://github.com/mpl-extensions/mpl-interactions/pull/286
Full Changelog: https://github.com/mpl-extensions/mpl-interactions/compare/0.23.2...0.24.0
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 2 years ago
mpl-interactions - 0.23.2
What's Changed
- fix: radio button intepretation by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/285
Full Changelog: https://github.com/mpl-extensions/mpl-interactions/compare/0.23.1...0.23.2
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 2 years ago
mpl-interactions - 0.23.1
What's Changed
- fix: scatter alpha bug by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/280
Many thanks to Discourse user amt for reporting and helping figure out the bug.
Full Changelog: https://github.com/mpl-extensions/mpl-interactions/compare/0.23.0...0.23.1
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 2 years ago
mpl-interactions - 0.23.0
What's Changed
- Linting by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/271
- Docstrings by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/272
- Fix
vmin_vmaxbehavior + add it to scatter by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/274 - feat: only disallow duplicate names when values don't match by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/275
Full Changelog: https://github.com/mpl-extensions/mpl-interactions/compare/0.22.3...0.23.0
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 2 years ago
mpl-interactions - 0.22.3
What's Changed
- Update contributing.md for zsh use by @wgottwald in https://github.com/mpl-extensions/mpl-interactions/pull/264
- Update for transferred github org by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/267
- fix: properly handle xarray extents in hyperslicer by @ianhi in https://github.com/mpl-extensions/mpl-interactions/pull/270
- hopefully for the final time....
New Contributors
- @wgottwald made their first contribution in https://github.com/mpl-extensions/mpl-interactions/pull/264
Full Changelog: https://github.com/mpl-extensions/mpl-interactions/compare/0.22.2...0.22.3
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 2 years ago
mpl-interactions - 0.22.2
What's Changed
- fix segmenter for mpl 3.7 by @ianhi in https://github.com/ianhi/mpl-interactions/pull/262
Full Changelog: https://github.com/ianhi/mpl-interactions/compare/0.22.1...0.22.2
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 3 years ago
mpl-interactions - 0.22.1
What's Changed
- Ci/use nightly wheels by @ianhi in https://github.com/ianhi/mpl-interactions/pull/251
- docs: add matthewfeickert as a contributor for code by @allcontributors in https://github.com/ianhi/mpl-interactions/pull/252
- chore: Update actions to latest releases by @matthewfeickert in https://github.com/ianhi/mpl-interactions/pull/253
- ci: Add Dependabot workflow for maintaining GitHub Actions by @matthewfeickert in https://github.com/ianhi/mpl-interactions/pull/254
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in https://github.com/ianhi/mpl-interactions/pull/257
- don't cast None vm(in,ax) to array as that conflicts with a norm argument by @ianhi in https://github.com/ianhi/mpl-interactions/pull/258
Full Changelog: https://github.com/ianhi/mpl-interactions/compare/0.22.0...0.22.1
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 3 years ago
mpl-interactions - 0.22.0
What's Changed
- Fix link to examples directory in README.md by @hckr in https://github.com/ianhi/mpl-interactions/pull/244
- add
iplt.textby @ianhi in https://github.com/ianhi/mpl-interactions/pull/246
New Contributors
- @hckr made their first contribution in https://github.com/ianhi/mpl-interactions/pull/244
Full Changelog: https://github.com/ianhi/mpl-interactions/compare/0.21.0...0.22.0
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 3 years ago
mpl-interactions - 0.21.0
What's Changed
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in https://github.com/ianhi/mpl-interactions/pull/241
- Add support for Python 3.10 by @JamesWrigley in https://github.com/ianhi/mpl-interactions/pull/242
- Implement enabling and siabling panhandler by @JamesWrigley in https://github.com/ianhi/mpl-interactions/pull/243
New Contributors
- @JamesWrigley made their first contribution in https://github.com/ianhi/mpl-interactions/pull/242
Full Changelog: https://github.com/ianhi/mpl-interactions/compare/0.20.2...0.21.0
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 3 years ago
mpl-interactions - 0.20.2
What's Changed
- Flake8 by @ianhi in https://github.com/ianhi/mpl-interactions/pull/235
- compare figures instead of images by @ianhi in https://github.com/ianhi/mpl-interactions/pull/236
- fix
extra_controlsinside controls context by @ianhi in https://github.com/ianhi/mpl-interactions/pull/240- thanks to @synocode for reporting
Full Changelog: https://github.com/ianhi/mpl-interactions/compare/0.20.1...0.20.2
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 4 years ago
mpl-interactions - 0.20.1
What's Changed
- docs: add samwelborn as a contributor for userTesting by @allcontributors in https://github.com/ianhi/mpl-interactions/pull/226
- Deprecate
ioffin favor ofplt.ioff()by @ianhi in https://github.com/ianhi/mpl-interactions/pull/230 - Don't fail on sca by @ianhi in https://github.com/ianhi/mpl-interactions/pull/233
Full Changelog: https://github.com/ianhi/mpl-interactions/compare/0.20.0...0.20.1
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 4 years ago
mpl-interactions - 0.20.0
What's Changed
- Allow using controls as context by @ianhi in https://github.com/ianhi/mpl-interactions/pull/223
- Allow latest ipywidgets + test them by @ianhi in https://github.com/ianhi/mpl-interactions/pull/225
Thanks to @samwelborn for askign about ipywidgets 8
Full Changelog: https://github.com/ianhi/mpl-interactions/compare/0.19.0...0.20.0
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 4 years ago
mpl-interactions - 0.19.0
Enable all kwargs for heatmap_slicer: https://github.com/ianhi/mpl-interactions/pull/220
bigger v bump because order of args changed.
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.18.1
Big changes to docs thanks to @redeboer in #203 #208 #209
Test improvements:
212 (also @redeboer)
Bugs: Fixed issue with turning scalars into 1D numpy arrays (#214 ) #216
Build:
Swapped to setuptoolsscm #217 (hopefully this works :crossedfingers: )
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.18.0
User facing improvements:
207 - Allow image segmenter to embedded in a GUI + allow specifying the buttons for the panning and for the lasso.
Embed image-segmenter in PySimpleGUI example
```python import numpy as np import PySimpleGUI as sg """ Embedding the Matplotlib toolbar into your application """ from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2Tk from matplotlib.figure import Figure from mpl_interactions import image_segmenter # ------------------------------- PySimpleGUI CODE layout = [ [sg.T("Graph: y=sin(x)")], [sg.B("Toggle Erase Mode"), sg.B("Exit")], [sg.T("Controls:")], [sg.Canvas(key="controls_cv")], [sg.T("Figure:")], [ sg.Column( layout=[ [ sg.Canvas( key="fig_cv", # it's important that you set this size size=(300, 800), ) ] ], background_color="#DAE0E6", pad=(0, 0), ) ], [sg.B("Alive?")], ] window = sg.Window("Graph with controls", layout) # apply the layout so that the canvas exists for matplotlib to use. window.finalize() # Set up the Matplotlib Figure DPI = 100 fig = Figure((200 * 2 / float(DPI), 800 / float(DPI)), dpi=DPI) canvas = FigureCanvasTkAgg(fig, master=window["fig_cv"].TKCanvas) # A tk.DrawingArea. toolbar = NavigationToolbar2Tk(canvas, window["controls_cv"].TKCanvas) toolbar.update() fig.set_size_inches(404 * 2 / float(DPI), 404 / float(DPI)) canvas.draw() canvas.get_tk_widget().pack(side="right", fill="both", expand=1) # Set up matplotlib styling # This won't change each loop ax = fig.gca() from imageio import imread image = imread( "https://github.com/matplotlib/matplotlib/raw/v3.3.0/lib/matplotlib/mpl-data/sample_data/ada.png" ) _ = ax.imshow(image) segmenter = image_segmenter(image, ax=ax) while True: event, values = window.read() print(event, values) if event in (sg.WIN_CLOSED, "Exit"): # always, always give a way out! break elif event == "Toggle Erase Mode": segmenter.erasing = not segmenter.erasing window.close() ```Thanks to @redeboer for several behind the scenes improvements:#203 #204
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.17.12
Fixed scatter kwargs and include marker and facecolor #198. Thanks to @jrussell25 for finding the issue via marker and @kmdalton for facecolor
Also fixed black lint ci - thanks to @redeboer (more robust pre-commit to come!)
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.17.11
Fix Matplotlib range sliders - #195
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.17.10
Improved the handling of scalar arguments: #194 which fixed https://github.com/ianhi/mpl-interactions/issues/191 and https://github.com/ianhi/mpl-interactions/issues/192
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.17.9
- Fixed saving animations for user provided ipywidgets sliders: https://github.com/ianhi/mpl-interactions/pull/182
- Improved the packaging by migrating to
setup.cfg: https://github.com/ianhi/mpl-interactions/pull/185
Thanks to @redeboer for contributing to this release
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.17.8
Fixed imshow kwarg handling Fixed GIF on frontpage of docs
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.17.7
Fixed issues with register_callback. Was breaking when eager was True and params=None
Scientific Software - Peer-reviewed
- Python
Published by ianhi over 4 years ago
mpl-interactions - 0.17.6
More correct handling of kwargs inside of axhline https://github.com/ianhi/mpl-interactions/issues/173#issuecomment-808081644
Thanks to @snowtechblog for finding this issue.
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.17.5
Fixed axhline not working #173 - Thanks to @snowtechblog for reporting
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.17.4
- Cleaned up docstrings #168
- Fixes for the upcoming matplotlib release #164
- Fixed a transpose of extent when using xarray in hyperslicer #169
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.17.3
Don't override the extent argument to hyperslicer when passed an xarray array.
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.17.2
Accidently double bumped the version - woops.
- Fixed a bug that completely broke
heatmap_slicer - Started using https://github.com/ianhi/mpl-playback in the docs
- Mostly using this library as a testing ground for that, definitely not fully developed.
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.17.0
Adds support for registering custom callbacks for parameter changes #160
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.16.2
Fix an off by one error found by @kmdalton: #156
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.16.1
Matplotlib sliders would break with numpy < 1.19. Found and fixed by @mwshinn in #155
Scientific Software - Peer-reviewed
- Python
Published by ianhi almost 5 years ago
mpl-interactions - 0.16.0
Hyperslicer support for vmin_vmax
python
%matplotlib widget
import numpy as np
import matplotlib.pyplot as plt
import mpl_interactions.ipyplot as iplt
from mpl_interactions import hyperslicer
arr = np.random.randn(5, 100,100)
fig, axs = plt.subplots(1,2)
ctrls = hyperslicer(arr, ax=axs[0], vmin_vmax=("r", arr.min(), arr.max()))
def f(axis0):
return arr[axis0].flatten()
_ = iplt.hist(f, controls = ctrls['axis0'], ax=axs[1])
_ = iplt.axvline(ctrls['vmin'],ax = axs[1], color='k')
_ = iplt.axvline(ctrls['vmax'],ax = axs[1], color='k')

Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.15.0
Big PR: https://github.com/ianhi/mpl-interactions/pull/150
- Scalar arguments can passed tuples to directly create sliders
- you can index a controls object directly into a scalar argument
- created a range slider widget
- added vmin_vmax kwargs
- more pass through of matplotlib kwargs
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.14.2
Fixed an issue with indexer where it would break when passed positional args. e.g. in scatter #152
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.14.1
Fixed xarray missing from hyperslicer docstring
Also gets the stable version to render on RTD they were down when last release happened so builds failed.
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.14.0
Implemented the ability to save animations generated from a controls object. #147
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.13.1
145 Fixed a bug where imshow, hyperslicer and scatter would break if they were not passed the current axis.:
python
fig, axs = plt.subplots(1, 2)
iplt.imshow(img, ax=axs[0])
would break because this would ultimately call gca()._sci(im) but gca would return axs[1] which was empty.
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.13.0
New features:
Created the scatter_selector widgets + allowed mixing of ipywidgets and matplotlib widgets. #141
This enables fun things like this:

Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.12.0
New features:
hyperslicer now natively supports taking xarray objects and infers the approriate sliders from them. https://github.com/ianhi/mpl-interactions/pull/138
Thanks to: @jrussell25 for contributing to this release
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.11.0
bug fixes:
image_segmenter wasn't making use of the cmap argument. Now all kwargs are passed through to imshow. Thanks to @stefanopiovesan for finding this bug. https://github.com/ianhi/mpl-interactions/issues/135
Improvements:
image_segmenter now allows styling of the lineprops for the lasso selector.
All the above is documented here: https://mpl-interactions.readthedocs.io/en/latest/examples/image-segmentation.html#Styling
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.10.1
Updated the old mpl-sliders docs page and fixed a few bugs with passing pre-created mpl-sliders along the way. Moving docs to a notebook also introduced tests for that.
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.10.0
Allow hyperslicers to share controller objects. This allows doing stuff like this:
```python %matplotlib ipympl import matplotlib.pyplot as plt from mplinteractions import hyperslicer from skimage.data import binaryblobs
arr1 = []
arr2 = []
for i in range(10):
arr1.append(binaryblobs(length=128,ndim=2))
arr2.append(binaryblobs(length=128,ndim=2))
plt.figure()
controls = hyperslicer(arr1, playbuttons=True, cmap='jet')
_ = hyperslicer(arr2, playbuttons=True,alpha=.5, controls = controls)
```

Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.9.1
attempt to fix publish CI workflow
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions - 0.9.0
- New way of specifying play buttons + default to the left side
- auto publish via github CI
- clean up several warnings/misrenders in the docs
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago
mpl-interactions -
Scientific Software - Peer-reviewed
- Python
Published by ianhi about 5 years ago