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

add attribute boxtext to boxplots #2145

Closed
salim-b opened this issue Nov 6, 2017 · 10 comments
Closed

add attribute boxtext to boxplots #2145

salim-b opened this issue Nov 6, 2017 · 10 comments

Comments

@salim-b
Copy link
Contributor

salim-b commented Nov 6, 2017

Would be nice if we could change the 5 (6 if boxmean=TRUE) hoverinfo texts of Plotly's boxplots to custom values.

#2094 seems to introduce the text attribute for the individual data points in boxplots. An additional boxtext attribute for the aggregate summary statistics (min, lower quartile, median, mean, upper quartile, max) hoverinfo texts would be awesome.

This seems to become even more relevant when other whisker options get intoduced as proposed in #277. To give viewers an idea of what the values of the boxplot actually depict, the boxtext attribute could then be set to an adequately explanatory character vector.

Might be related: #1642

@etpinard
Copy link
Contributor

I think you're looking for more box-centric hoverinfo flags, not a new attribute.

For example, hoverinfo: 'x+q1+mean' would only show the x, q1 and mean hover labels.

@salim-b
Copy link
Contributor Author

salim-b commented Nov 13, 2017

I think you're looking for more box-centric hoverinfo flags, not a new attribute.
For example, hoverinfo: 'x+q1+mean' would only show the x, q1 and mean hover labels.

That would be nice, too – but not what I meant. I want to change the actual text that is displayed in the q1, mean etc. hoverinfo labels. So instead of just displaying the bare number of the mean for example I wanna show something like 10.3 (mean) by setting boxtext to a corresponding character vector (1st string corresponds to min, 2nd to q1, 3rd to median, 4th to q3 and 5th to max if boxmean is false). Then I could set hoverinfo: 'x+y+boxtext'.

Of course I had to calculate the numbers myself if I wanna concatenate them with my custom strings, i.e. include them directly in boxtext but since I'm using R this isn't a big deal, I can just take them from boxplot.stats() from grDevices 😬 (although it would surely be more user-friendly if the values plotly calculated could be directly accessed). In that case I would set hoverinfo: 'x+boxtext'.

Additionally it could make sense to "hardcode" the ordering of the values of boxtext in the case that boxmean is set to true/"sd", so that the hoverinfo text for median always corresponds to the 3rd string and the one for the mean always to the 4th (only relevant if 6 strings are provided in boxtext; without the mean the actual order is always the same by definition).

@etpinard
Copy link
Contributor

etpinard commented Nov 13, 2017

Ok. I can't say I'm a fan of this proposal. Sure, plugging numbers would be easy from R, but then we can't guarantee the numbers will exactly match the ones on the plot.

Note that PR #2094 also adds text descriptors to the box hover labels:

image

@salim-b
Copy link
Contributor Author

salim-b commented Nov 13, 2017

Note that PR #2094 also adds text descriptors to the box hover labels:

Awesome, almost exactly what I meant. Now I wanna just be able to customize those text descriptors, e.g. to translate them into my native language 🙂

@etpinard
Copy link
Contributor

etpinard commented Nov 13, 2017

Now I wanna just be able to customize those text descriptors, e.g. to translate them into my native language

Then, this will be part of #856

@salim-b
Copy link
Contributor Author

salim-b commented Nov 13, 2017

Then, this will be part of #856

Allright, that looks promising and would fully enable what I wanna accomplish, I guess 👍

@amirh357
Copy link

amirh357 commented May 1, 2019

for the boxplot using plot_ly, Is it possible to have a "text" hoverinfo similar to what we can define for type="bar" ? For example, I just want to show the median, Q1, and Q3 in a text box when I hover over a box with some additional information that I can write in that box. For example, see the figure below:
Box_hoverinfo

@shamilnabiyev
Copy link

Hi @amirh357 that's a pretty good idea. Have you any solution for it?

@nmoreaud
Copy link

nmoreaud commented Aug 4, 2020

Hello, here is an example where I add another hover information : (https://codepen.io/kiruahxh/pen/PoNYvWw)

However, I found no information about the boxplot tooltip customization/replacement (ex : How can I show a multiline text instead of having multiple tooltips? How can I translate 'median' and 'min' keywords ? How can I feed a tooltip with the statistics automatically computed by plotly.js ?)

@datainvestor
Copy link

@nmoreaud
This is something I'm looking for as well. Instead of having multiple tooltips separately for each of the values I need one textbox showing all the values in one place (this is useful when the chart has space boundaries and the values are being cut off). I wonder if this is possible here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants