Tooltip of ggplotly's geom_area not updating along the x axis
Nobody has claimed this yet.
- Dominant language
- R
- Stars
- 2.7k
- Forks
- 641
- PR merge metrics
- No merged PRs in 30d
Description
Recently, the hover text/tooltip when using geom_area() only shows the values for the first element along the x axis - in the example below, the geom_col graph has the expected tooltips, but the geom_area is stuck with the first value.
library(tidyverse)
economics %>% {ggplot(., aes(x=date,y=pop)) + geom_area()} %>% plotly::ggplotly()
economics %>% {ggplot(., aes(x=date,y=pop)) + geom_col()} %>% plotly::ggplotly()
The problem seems to be in ggplotly() as the native plot_ly() approach still works as expected:
plotly::plot_ly(x=~economics$date, y=~economics$pop, type='scatter', mode='none', stackgroup='one')
In a more complicated graph (with fill groups and facets) other elements seem to update, but the x and y values are stick at the first element still - again, compare geom_area to geom_col results:
economics_status <- economics %>% mutate(pop = pop - unemploy) %>% pivot_longer(cols = c(pop,unemploy), names_to="status", values_to="number")
economics_status %>%
{ggplot(., aes(x=date,y=number, fill=status)) + geom_area()} %>% plotly::ggplotly()
economics_status %>%
{ggplot(., aes(x=date,y=number, fill=status)) + geom_col()} %>% plotly::ggplotly()
I'm getting the error using R 4.2.2, plotly version 4.10.1. Rolling back using devtools, I am getting the same error back to plotly 4.9.4 - but anything earlier won't load any output at all, so presumably clashing with something else in the ecosystem. It may be relevant that htmlwidgets is at 1.6.2 and htmltools is 0.5.5.
However, all worked fine with R 4.1.3 and plotly 4.10.0 ... which had htmlwidgets at 1.5.4 and htmltools at 0.5.3. But rolling back htmlwidgets with the other settings above does not fix things.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the economics examples through ggplotly(), comparing geom_area() with geom_col() and the native plot_ly() approach. Trace the geom_area conversion and tooltip data handling; done means x and y values update along the axis for simple, filled, and faceted area plots.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- r
- Domain
- data-visualization
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100