Assume data
library(ggplot2)
library(plotly)
set.seed(357)
xy <- data.frame(letters = rep(c("a", "b", "c"), times = 3),
values = runif(9),
groups = rep(c("group1", "group2", "group3"), each = 3))
letters values groups
1 a 0.9913409 group1
2 b 0.6245529 group1
3 c 0.5245744 group1
4 a 0.4601817 group2
5 b 0.2254525 group2
6 c 0.5898001 group2
7 a 0.1716801 group3
8 b 0.3195294 group3
9 c 0.8953055 group3
ggplotly(
ggplot(xy, aes(x = letters, y = values, group = groups)) +
theme_bw() +
geom_point()
)
My goal is to, on hover, highlight all points that belong to the same group. E.g. on hover over the point in the upper right corner, all points from this group (circles) would turn red. Something similar can be achieved using layout(hovermode = "x")
but only if one is interested in highlighting all points on one of the axes. I would like the same behavior for custom variable other than x
, y
or closest
(which are modes of hovermode
).