Skip to content

HoloViews: Bugs and Wishlist

J.L Stevens edited this page Apr 17, 2015 · 2 revisions

Doozy pickle tests

New private repo called 'pickle-tests'. Contains one folder for each release. Doozy (not Travis!) will pull this repo anywhere it likes (as long as HoloViews is available) and attempt to unpickle each pickle. Display tests can be stripped out entirely and this will let us squash reference data as much as we want.

Bugs

  • Constant sliders are hidden but a single slider doesn't become a scrubber as it should when mode='auto'

  • options = OptionTree(groups={'group1': Options(), 'group2': Options()})

Allows this to be set:

Options('fooo')

  • Legends appears under curves!

  • Using extents=(0,0,1,1) breaks whereas extents=(0.0001,0.001,1,1) works (0 seems to be handled differently for some reason). [PRESUMED FIXED]

Wishlist

  • New commit means plot options can be changed per element in a HoloMap (e.g azimuth in a 3D plot). This is really cool but style options are tricker to support. The way it could work is if there was a mixin class HandleUpdaters that is mixed-in with the Plot baseclass. This would look up the style options declared on the Plot and dispatch to the appropriate style-update handler is the style options change across frame updates.

  • {+axiswise[key]} or {+axiswise[value]} where simple {+axiswise} is equivalent to {+axiswise[key,value]}. Possible extensions to specify individual dims{+axiswise['Time', 'Duration']}.

  • HoloMap should support dictionary keys (cast to tuple keys in the constructor).

  • The opts cell magic could look across line and cell to support:

%%opts ::
Curve (color='r')
Image (cmap='jet')
::
  • Use the build Travis matrix feature to test IPython 3. Travis build matrix. Example

  • Insets by group in overlay. [Priority, Easy]

%%opts Overlay [inset_group='Foo', inset_lbrt=None]
image.relabel(group='Foo') * curve.relabel(group='Foo')
  • Added 1D (Curve) FFT [Priority, Easy]

  • Select any column for Tabular types [Priority, Easy]

  • Error element (error bars) and Band for stream-style plots. [Priority, Easy]

  • PieChart Element.

  • Check that the pickles for notebooks on the release version can be loaded without problems.

  • JL: Fix obscure bug when compositors (undocumented!) are used with %%opts [PRIORITY]

  • PR: Integrate constant_dimensions properly and allow constant_dimensions to be set with string keys instead of dimension objects (for consistency with how we handle other specified dimensions).

  • Option to start video/scrubber at beginning or end (or loop?) [Low Priority, Easy]

  • Dimension objects could support units (e.g. quantities). The interface could be string based and DataViews would look up the appropriate quantities object (optional dependency). Methods on Dimension could then offer conversion e.g based on a global declaration of desired unit types. [Priority, Hard]

  • Comparison could have a trace feature to see where the exception occurs. Like repr for comaprisons. [Low Priority, Medium]

  • Polar raster type and correspond plot. [Low Priority, Easy]

  • Allowing multiple nested cell magics for testing. [Low Priority, PITA]

Documentation

  • Set __author__ in notebooks.

  • Document matplotlib backends

  • Add tests for imagen website notebook