专栏名称: 表哥有话讲
国内最大的R语言专业学习平台| R官方认证学习实践社区--校企实践交流、名企内推和成果分享,立即关注-掌握R语言全球最新资讯与成果!
目录
相关文章推荐
生物学霸  ·  患癌、被导师赶走,她默默无闻做了 40 ... ·  20 小时前  
生物学霸  ·  清华大学清退一博士生 ·  20 小时前  
生物探索  ·  Nature Biotechnology ... ·  22 小时前  
生物制品圈  ·  补体系统药物在IgA肾病中的研究与应用进展 ·  2 天前  
生物学霸  ·  打破国外垄断,985 签约 1.6 亿 ·  2 天前  
51好读  ›  专栏  ›  表哥有话讲

R语言可视化——关于ggplot所支持的数据地图素材类型

表哥有话讲  · 公众号  ·  · 2017-06-22 08:42

正文

请到「今天看啥」查看全文



  • sp:SpatialPolygonDataFrame

  • sf:Simple feature list column


所以说数据文件格式和空间数据集对象格式的关系可以这么表述:



这两种格式的数据集所描述的信息差不多是一致的。第一种格式(sp)是R语言绘图比较传统的数据格式,它将地理信息数据分割为两大块:描述层和映射层。


在数据存放时,描述层记录各个地理区域的名称、ID、编号、简写、iOS编码,以及其他标识信息和度量变量,描述层是一个dataframe,我们可以用data@data来提取描述层的数据框。


而对应的几何映射层,是每一个行政区域的多边形边界点,这些边界点按照order排序,按照group分组。多边形边界点信息是一个多层嵌套的list结构,但是我们仍然可以通过fortity函数将其转化为数据框。


即sp空间数据对象是一个dataframe(描述层)和polygons(几何映射层)两个对象的组合对象。


而sf对象将这种控件数据格式件进行了更加整齐的布局,使用st_read()导入的空间数据对象完全是一个整齐的数据框,拥有整齐的行列,这些行列中包含着数据描述和几何多边形的边界点信息。其中最大的特点是,它将每一个行政区划所对应的几何边界点封装成了一个list对象的记录,这条记录就像其他普通的文本记录、数值记录一样,被排列在对应行政区划描述的单元格中。


这样做的好处是,我们不必要自己做这种从描述层到几何映射层的对应关系的链接,因为对应关系本身就已经存在。然后如果是第一种sp格式的话,在制作ggplot2地图过程中,我们需要分离描述层和几何映射层,并为两者指定连接的id(主键),如果算上你要将自己的业务数据和描述层数据合并这一动作的话,那么总共我们需要合并两次数据。(倘若描述层均没有对的id,你需要为其构造虚拟id,这一次合并算上的话,那么就需要三次合并)。


然在sf对象中我们仅需指定一次合并即可,即描述层和业务指标数据合并。







请到「今天看啥」查看全文