/ / R - umieść linie siatki ggplot na pierwszym planie [duplicate] - r, ggplot2, themes, r-grid

R - umieść linie siatki ggplot na pierwszym planie [duplicate] - r, ggplot2, themes, r-grid

Chciałbym wiedzieć, czy jest na to sposóbggplot rysuje swoje linie siatki przed wykreślonymi danymi. O ile mi wiadomo, mogę łatwo prawie wszystko sformatować za pomocą funkcji theme (), która do tej pory działa dobrze. Nie znajduję jednak opcji, w jakiej kolejności rysowane są elementy, mógłbym wprowadzić dodatkowe linie do wykresu, który powinien zostać wcześniej sformatowany (współrzędne, grupy linii itp.) Brzmi bardziej skomplikowanie, niż powinno być. Mam więc nadzieję, że mogę zmodyfikować samą siatkę fabularną, aby wykonać to zadanie.

Przykład tego, w jaki sposób zwykle kreślę ramkę danych sf.df załadowanego shapefile sf:

(ggplot(sf.df, aes(x=long, y=lat))
+ geom_polygon(data=sf.df, aes(group=group, fill=NFK))
+ theme(panel.grid.major=element_line(colour="black"))
+ coord_map(xlim=c(7.08, 7.14), ylim=c(50.93, 50.96))
)

Z góry dziękuję!

Odpowiedzi:

11 dla odpowiedzi nr 1

Jak zasugerował @joran, używając geom_hline i geom_vline jest bezsprzecznie rozwiązaniem. Proste zdefiniowanie yintercept i xintercept odpowiednio jak poniżej:

...
+ geom_vline(xintercept=seq(7.08, 7.14, by=0.01))
+ geom_hline(yintercept=seq(50.93, 50.96, by=0.01))
...