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

Refactored plotly backend #3256

Merged
merged 33 commits into from
Dec 11, 2018
Merged

Refactored plotly backend #3256

merged 33 commits into from
Dec 11, 2018

Conversation

philippjfr
Copy link
Member

@philippjfr philippjfr commented Dec 4, 2018

Cleanup and refactoring of the plotly backend.

  • Adds Path3D element Inclusion of a 3d lines functionality ? #2453
  • Consistently handles invert_axes and invert_x/y/zaxis options
  • Adds support for xticks/yticks/zticks
  • Ports basic dim transforms to plotly backend
  • Updates TablePlot to trace type
  • Adds LabelPlot, AreaPlot, SpreadPlot, ViolinPlot
  • Adds unit tests for element plot classes
  • Add documentation for plotly containers
  • Added/updated element reference notebooks

@philippjfr
Copy link
Member Author

@jonmmease Still working on this a bit but I wanted to check with you before getting much further into this. The PR refactors the element plotting classes a bit. The main changes is that instead of declaring the trace_type each class now declares some trace_kwargs which can include a bit more info than the type and then it refactors the get_data and graph_options methods to allow returning multiple sets of data.

@jonmmease
Copy link
Collaborator

@philippjfr, I did look over it briefly last night and this looks/sounds like a nice generalization that will be useful to support future elements. Thanks!

@philippjfr
Copy link
Member Author

Okay, I think I'm mostly done here. I think it is indeed a nice generalization which makes writing new plotting element plotting classes a lot easier. One thing that should be generalized further is the way styling is applied, i.e. certain style options are set on the marker while others are set on the data itself and that is not nicely handled yet. However for the time being this is already much more flexible than it was. I've also finally added unit tests for all the element plots.

@philippjfr philippjfr added tag: component: plotting type: enhancement Minor feature or improvement to an existing feature and removed status: WIP labels Dec 9, 2018
@philippjfr
Copy link
Member Author

Ready to review and merge.

@jonmmease
Copy link
Collaborator

wow @philippjfr, this is awesome! The plotly backend is really coming along now! Everything looks great from my end, and I'm excited to play with it soon 🙂

]
}
],
"metadata": {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Notebook metadata needs to be stripped out.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't see any.

@jlstevens
Copy link
Contributor

jlstevens commented Dec 10, 2018

I've not yet reviewed the code but I do see this PR is introducing a bunch of new notebooks.

I'll be making a PR today updating all the bokeh reference gallery notebooks to use the new options style and I don't want to merge any new notebooks unless they conform to that style as well.

Edit: The PR showing what has been updated for Bokeh is #3269

@jlstevens
Copy link
Contributor

@philippjfr told me this is now ready to merge.

Thanks for updating the notebooks as requested. Merging.

@jlstevens jlstevens merged commit d1b71c8 into master Dec 11, 2018
@philippjfr philippjfr deleted the plotly_updates branch December 13, 2018 04:21
Copy link

This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 24, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
tag: component: plotting type: enhancement Minor feature or improvement to an existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants