Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check matplotlib 2.0 compatibility #1006

Closed
philippjfr opened this Issue Dec 8, 2016 · 14 comments

Comments

Projects
None yet
3 participants
@philippjfr
Copy link
Contributor

philippjfr commented Dec 8, 2016

Since matplotlib 2.0rc1 has been released we should check our compatibility and start on our own style overhaul.

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 10, 2017

I've assigned myself as I am happy to check - not promising to fix anything though! ;-p

@jlstevens jlstevens self-assigned this Jan 10, 2017

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

I've created a conda env with matplotlib 2.0.0rc2 and the new holoviews dev release (dev4) to see what happens. I'll post a zip archive of notebook snapshots for you to look at in a bit.

Skimming through the Element tutorial, I don't see too many problems! Here is what I did spot:

image

(Problems with ErrorBars)

image

(Appearance of Viridis)

image

(Minor style changes for the 3D elements - namely the white outlines)

EDIT: They look different on holoviews.org but seem to match on dev.holoviews.org so this may be done to changes since 1.6.

image

(Warnings for HeatMap)

image

(Some style changes for BoxWhisker)

image

(Font changes in tables)

The biggest issue so far seems to be the broken errorbars...

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

Matplotlib 2 is an improvement on the Hompage. You can see the legend better:

Instead of:

Note - there is also a change to the subfigure label font..

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

No issue with the containers tutorial except for #1052 which isn't related to the matplotlib version.

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

DynamicMap tutorial seems fine except for #1053 which is unrelated to matplotlib.

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

Couldn't spot any issues with the Exploring_Data tutorial...

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

The "Introduction", "Showcase", "Composing_Data", "Columnar_Data" and "Continous_Coordinates" tutorials seem fine too.

In Introduction, there is the same change to a grey legend background as shown above for Homepage...

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

In Sampling Data, the point colors have changed:

image

The "Options" and "Pandas Conversion" tutorials seem to be unchanged. I was surprised nothing changed in "Pandas Seaborn"! I spotted one difference but that is down to a change in HoloViews:

image

The legend box outline is not on holoviews.org but is there on dev.holoviews.org.

@jlstevens

This comment has been minimized.

Copy link
Contributor

jlstevens commented Jan 11, 2017

That concludes my investigation of matplotlib 2.0.0rc2. We will need some PRs to fix some of the issues mentioned above, but overall it looks like not too much has changed (thankfully!). I suppose there may be lots of changes to the defaults in matplotlib 2 but we seem to keep our options under fairly tight control. :-)

@philippjfr

This comment has been minimized.

Copy link
Contributor Author

philippjfr commented Jan 11, 2017

Thanks for doing this, I'll summarize the issues:

  • Need to fix ErrorBars
  • Ensure Points has default cmap (as part of #748)
  • Figure out why HeatMap is raising NaN warnings. Have to pass masked array?
  • Investigate why Scatter3D point coloring changed
@vascotenner

This comment has been minimized.

Copy link
Contributor

vascotenner commented Mar 1, 2017

There are some more api changes http://matplotlib.org/api/api_changes.html, including:

  • The axisbg and axis_bgcolor properties on Axes have been deprecated in favor of facecolor.

This is used in two files:

  • holoviews/plotting/mpl/element.py
  • holoviews/plotting/mpl/chart3d.py

Currently, using axis_bgcolor raises a userwarning (which is how I found this).

@philippjfr

This comment has been minimized.

Copy link
Contributor Author

philippjfr commented Mar 1, 2017

Perfect thanks @vascotenner. Should be a quick fix by whomever wants to do it.

One other thing I've noticed that setting up ticks fails in some cases because we're not setting a dpi value on the figure until it's rendered. At least three of our unit tests are affected.

@philippjfr philippjfr added this to the v1.7.0 milestone Mar 1, 2017

@philippjfr

This comment has been minimized.

Copy link
Contributor Author

philippjfr commented Mar 29, 2017

Remaining issues are:

  • For some reason there are a lot of aspect warnings raised, these should be suppressed.
  • Some tests are failing because no dpi is set
  • spectral colormap is raising warnings
  • as mentioned by @vascotenner bgcolor is now axis_bgcolor
@philippjfr

This comment has been minimized.

Copy link
Contributor Author

philippjfr commented Apr 10, 2017

Final issues have been addressed, please reopen if any other warnings or issues crop up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.