我想知道是否有办法让ggplot在绘制数据前绘制其网格线。据我所知,我可以通过使用到目前为止运作良好的theme()来轻松地格式化所有内容。但是,我找不到绘制元素的顺序选项。我可以预先在绘图中引入需要格式化的其他线条(坐标,线组等)。听起来更复杂,因为它需要。所以我希望,我可以修改绘图网格本身来完成这项工作。
我通常如何绘制已加载的shapefile sf.df
的数据框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))
)
提前谢谢!
答案 0 :(得分:11)
正如@joran建议的那样,使用geom_hline
和geom_vline
绝对是一种解决方案。简单地分别定义yintercept
和xintercept
,如下所示:
...
+ geom_vline(xintercept=seq(7.08, 7.14, by=0.01))
+ geom_hline(yintercept=seq(50.93, 50.96, by=0.01))
...