Есть ли способ сделать функцию gqplot2 geom_density()
имитирующей поведение ggvis's layer_densities()
? То есть, сделайте так, чтобы p1
выглядел как p3
(см. Ниже) без звонка в xlim()
? В частности, я предпочитаю представление, которое сглаживает хвосты кривой плотности.Настройка x пределов xlim() в ggplot2 geom_density() для имитации поведения ggvis layer_densities()
library(ggvis)
library(ggplot2)
faithful %>%
ggvis(~waiting) %>%
layer_densities(fill := "green") -> p1
ggplot(faithful, aes(x = waiting)) +
geom_density(fill = "green", alpha = 0.2) -> p2
ggplot(faithful, aes(x = waiting)) +
geom_density(fill = "green", alpha = 0.2) +
xlim(c(30, 110)) -> p3
p1
p2
p3
ggvis Выход:
ggplot2 "по умолчанию":
ggplot2 "желательно":
Примечание: Можно сделать ggvis имитировать ggplot2 через следующее (используя trim=TRUE
), но я хотел бы пойти в другом направлении ...
faithful %>%
compute_density(~waiting, trim=TRUE) %>%
ggvis(~pred_, ~resp_) %>%
layer_lines()
Зачем избегать аргумента xlim? Вы обеспокоены тем, что решение не будет достаточно общим? –
@ RomanLuštrik correct - Я ищу более общее решение. – JasonAizkalns