Chcę użyć geom_ribbon w ggplot2 do rysowania zacienionych zakresów ufności. Ale jeśli jedna z linii wykracza poza ustawione granice, taśma jest odcinana bez rozciągania się do krawędzi wykresu.wstążka ggplot odcięta na limitach y
Minimal przykład
x <- 0:100
y1 <- 10+x
y2 <- 50-x
ggplot() + theme_bw() +
scale_x_continuous(name = "x", limits = c(0,100)) +
scale_y_continuous(name = "y", limits = c(-20,100)) +
geom_ribbon(aes(x=x, ymin=y2-20, ymax=y2+20), alpha=0.2, fill="#009292") +
geom_line(aes(x=x , y=y1)) +
geom_line(aes(x=x , y=y2))
Co chcę jest do odtworzenia samo zachowanie jak mam z kreślenia w podstawowej R, gdzie cieniowanie rozciąga się do krawędzi
plot(x, y1, type="l", xlim=c(0,100),ylim=c(-20,100))
lines(x,y2)
polygon(c(x,rev(x)), c(y2-20,rev(y2+20)), col="#00929233", border=NA)
użyciem 'OOB = waga :: squish' w' scale_y_continuous() 'Połączenie jest pomocne, ale tworzy kilka własnych artefaktów ... –
Możliwy duplikat [Limit ggplot2 osie bez zdejmowania dane (poza granicami): zoom] (http://stackoverflow.com/questions/25685185/limit-ggplot2-axes-without-removing-data-outside-limits-zoom) – aosmith