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

Boxplot: Set Whisker options #277

Closed
jdittrich opened this issue Feb 24, 2016 · 11 comments
Closed

Boxplot: Set Whisker options #277

jdittrich opened this issue Feb 24, 2016 · 11 comments
Labels
feature something new

Comments

@jdittrich
Copy link

Problem: Boxplot Whiskers can map to different data – sometimes this is +- 1.5 times the interquartil range, sometime the 5th and 95th percentile etc. In the box documentation, it is state that plotly uses the +-1.5 IQR as a standard. It is also stated that the boxpoints option allows other options, but seemingly boxpoints sets the displaying sof catterpoint and not of whiskers.

Proposed Solution: An option for setting what the whiskers mean. Candidates for this option would:

  • n * IQR (for a +-1.5* the IQR, like the current default)
  • nth percentiles (for something like a 5%/95% position)
  • n*sd (for a +- 1 standard deviation position)

Or, if that option(s) already exists, a hint in the docuementation on how to set them.

@etpinard etpinard added the feature something new label Feb 24, 2016
@etpinard
Copy link
Contributor

Thanks for the very clear description 🍻

You are correct. There is no way to override the box trace whisker metric at the moment.

Adding whiskers option is a great suggestion!

Unfortunately, because of other obligations, no plotly.js team member will dedicate time to this enhancement until at least April 1st.

That said, this issue could be a great way for someone from the community to make a PR. All the action will take place in src/traces/box/ starting by adding a trace attribute in src/traces/box/attributes.js then coercing it in the default step src/traces/box/defaults.js and finally generalizing the calc step in src/traces/box/calc.js.

@jdittrich
Copy link
Author

🍻 cheers!
Thanks for pointing out the relevant files. I see what I can do but can't promise that I'm quicker than April the 1st :-)

@alanocallaghan
Copy link

@etpinard @jdittrich is this still unresolved?

@jdittrich
Copy link
Author

@alanocallaghan sadly not, I was unable to tackle it.

@alexcjohnson
Copy link
Collaborator

see also #1953 - one of the options should be max/min (which I guess would count as 0/100th percentile?) - and then rather than the current hard-coded dependence on boxpoints, boxpoints should just affect the default value of this setting.

@FelixZY
Copy link

FelixZY commented May 15, 2019

Any updates on this in 2019? Having the whiskers mean one thing in some graphs (where the boxpoints are visible) and another in others (where the boxpoints are not visible) is somewhat confusing.

@diegoscarabelli
Copy link

Agreed. Whiskers should correspond to editable percentile. That's how matplotlib does it.

@FilipVel
Copy link

FilipVel commented Jul 7, 2020

Any update on this issue?

@ahmedhosny
Copy link

ahmedhosny commented Jul 14, 2020

Seems like an old issue but keeps on coming back. I was a bit thrown off when I set boxpoints=False but suddenly my whiskers extended to cover all the outliers and the entire plot changed. This is for plotly.py.

Screenshot from 2020-07-13 20-14-07

@jackparmer
Copy link
Contributor

jackparmer commented Sep 10, 2020

This issue has been tagged with NEEDS SPON$OR

A community PR for this feature would certainly be welcome, but our experience is deeper features like this are difficult to complete without the Plotly maintainers leading the effort.

What Sponsorship includes:

  • Completion of this feature to the Sponsor's satisfaction, in a manner coherent with the rest of the Plotly.js library and API
  • Tests for this feature
  • Long-term support (continued support of this feature in the latest version of Plotly.js)
  • Documentation at plotly.com/javascript
  • Possibility of integrating this feature with Plotly Graphing Libraries (Python, R, F#, Julia, MATLAB, etc)
  • Possibility of integrating this feature with Dash
  • Feature announcement on community.plotly.com with shout out to Sponsor (or can remain anonymous)
  • Gratification of advancing the world's most downloaded, interactive scientific graphing libraries (>50M downloads across supported languages)

Please include the link to this issue when contacting us to discuss.

@gvwilson
Copy link
Contributor

gvwilson commented Jun 5, 2024

Hi - this issue has been sitting for a while, so as part of our effort to tidy up our public repositories I'm going to close it. If it's still a concern, we'd be grateful if you could open a new issue (with a short reproducible example if appropriate) so that we can add it to our stack. Cheers - @gvwilson

@gvwilson gvwilson closed this as completed Jun 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature something new
Projects
None yet
Development

No branches or pull requests

10 participants