Я хочу построить 3D-тепловую карту с plotly
, но я хотел бы, чтобы цветовой градиент не зависел от оси Z.
С помощью ggplot2
я могу создать следующее изображение:
dat <- data.frame("cat1" = sort(rep(seq(1:6), 6)),
"cat2" = rep(seq(1:6), 6),
"variable" = round(rnorm(36), 1),
"freq" = seq(100, (100-35)))
library(ggplot2)
ggplot(data.frame(dat), aes(cat1, cat2, fill = variable, label = freq)) +
geom_tile() +
geom_text()
И теперь с plotly
я не могу связать высоту с одним столбцом (здесь freq
) и цвет с другим (столбец variable
). На следующем изображении высота и цвет связаны с freq
.
library(plotly)
mat <- tapply(dat$freq, list(dat$cat1, dat$cat2), sum)
plot_ly(z = ~ mat) %>% add_surface