This document details webGL visualisations; webGL is ideal when you have large datasets to plot.
Surface
data("montereybay", package = "rayshader")
bay <- as.data.frame(as.table(montereybay))
bay$Var1 <- as.numeric(bay$Var1)
bay$Var2 <- as.numeric(bay$Var2)
bay |>
e_charts(Var1, reorder = FALSE) |>
e_surface(Var2, Freq) |>
e_visual_map(Freq)