The height
and width
parameters of geom_tile
are not being taken into account when converted to ggplotly
, as shown in the example below. Is there a work around? Please note that my dataset is in fact very large ( 80k data points), so I would favor an efficient solution, if there is one.
library(plotly)
X <- data.frame(x = c(1, 2, 1, 2), y = c(1, 1, 2, 2), z = 1:4)
gg <- ggplot(X, aes(x, y)) geom_tile(aes(fill = z), width = .5, height = .5)
gg
ggplotly(gg)
CodePudding user response:
This seems to be a bug in ggplotly. The easiest thing would be to convert your geom_tile
to geom_rect
. I don't think this will be any less efficient than geom_tile
, since you are just replicating what geom_tile
does internally.
library(plotly)
X <- data.frame(x = c(1, 2, 1, 2), y = c(1, 1, 2, 2), z = 1:4)
width <- .5
height <- .5
gg <- ggplot(X, aes(x, y))
geom_rect(aes(xmin = x - width/2, xmax = x width/2,
ymin = y - height/2, ymax = y height/2, fill = z))
ggplotly(gg)