R geom_tile ggplotly 忽略宽度和高度
R geom_tile width and height are ignored in ggplotly
geom_tile
的 height
和 width
参数在转换为 ggplotly
时未被考虑在内,如下例所示。有解决办法吗?请注意,我的数据集实际上非常大(+80k 个数据点),所以我希望有一个有效的解决方案,如果有的话。
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)
这似乎是 ggplotly 中的一个错误。最简单的方法是将 geom_tile
转换为 geom_rect
。我认为这不会比 geom_tile
效率低,因为您只是在复制 geom_tile
在内部所做的事情。
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)
geom_tile
的 height
和 width
参数在转换为 ggplotly
时未被考虑在内,如下例所示。有解决办法吗?请注意,我的数据集实际上非常大(+80k 个数据点),所以我希望有一个有效的解决方案,如果有的话。
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)
这似乎是 ggplotly 中的一个错误。最简单的方法是将 geom_tile
转换为 geom_rect
。我认为这不会比 geom_tile
效率低,因为您只是在复制 geom_tile
在内部所做的事情。
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)