1. R项目简介
R是一个开源的统计计较和图形编程语言和软件情况,遍及应用于统计阐明和数据挖掘[1]。R项目遵循GNU协议,它的软件情况源码由C,Fortran和R写就。R可以运行在多个平台,包罗各类Unix,Linux刊行版本,Window和MacOS上, 海内有中科院、厦门大学、北京交通大学等多个镜像[2]。R是对S语言的一种实现,由Ross Ihaka 和 Robert Gentleman 所建设,R取之他们名字的首字母。R具有由用户孝敬的大量的类库,可以或许处理惩罚各类科学计较的问题。
2.R与GIS
与地学问题相关的R类库也十分繁多,包罗Spatial data,Maptools,RGdal等。 不外好像StackOverflow的主站关于R在GIS的问题比GIS分站更为活泼。原因未知……之所以要利用R是因为R可以或许以Hadoop集成[3],但愿操作R更高效地处理惩罚空间聚类问题。固然Mashout也是一个很好的办理方案,可是感受用户越发需要剧本式的问题处理惩罚东西。R的GIS的书籍较量少,根基都是以文档的形式存在,个中Applied spatial data analysis with R是一本挺好的课本。多利用Example呼吁和Google也是进修R的一个好途径。
3.Shapefile导入与舆图显示
R语言中导入Shapefile长短常容易的,可以利用的包,包罗RGdal,maptools,PBSmapping等。在这里我们回收maptools和sp两个类库来实现舆图数据的导入和显示。在R中心选择镜像并下载。
加载这两个类库,输入如下代码:
- library(maptools)
- library(sp)
读取shapefile文件,可以直接输入文件路径可能通过file.choose函数来选择文件,这里回收国度基内地理信息系统1比400万数据中的省界疆土。
- vent.map <-readShapeSpatial(file.choose())
可能选择点、线、面范例输入
- point.mp <- readShapePoints(file.choose())
- line.mp <- readShapeLines(file.choose())
- poly.mp <- readShapePoly(file.choose())
留意,这个呼吁并不导入Shapefiel的Proj文件,所以导入的是无坐标信息的数据。
- print(proj4string(vent.map))
输出是:
[1] NA
查察shapefile属性,添加坐标信息
- summary(vent.map)
输出是:
- Object of class SpatialLinesDataFrame
- Coordinates:
- min max
- x 73.446960 135.08583
- y 3.408477 53.55793
- Is projected: NA
- proj4string : [NA]
- Data attributes:
- FNODE_ TNODE_ LPOLY_ RPOLY_ LENGTH
- Min. : 1.0 Min. : 1.0 Min. : 1.0 Min. : 1.0 Min. : 0.0040
- st Qu.: 433.0 1st Qu.: 432.0 1st Qu.: 1.0 1st Qu.: 1.0 1st Qu.: 0.0300
- Median : 876.0 Median : 880.0 Median : 1.0 Median : 65.0 Median : 0.0700
- Mean : 927.6 Mean : 929.9 Mean :128.8 Mean :210.8 Mean : 0.5421
- rd Qu.:1344.0 3rd Qu.:1344.0 3rd Qu.:204.0 3rd Qu.:327.0 3rd Qu.: 0.2350
- Max. :2131.0 Max. :2131.0 Max. :925.0 Max. :926.0 Max. :16.7130
- BOU2_4M_ BOU2_4M_ID GBCODE
- Min. : 1 Min. : 1 Min. :26010
- st Qu.: 447 1st Qu.: 219 1st Qu.:26010
- Median : 893 Median :26010 Median :26010
- Mean : 893 Mean :17260 Mean :35583
- rd Qu.:1339 3rd Qu.:26010 3rd Qu.:61010
- Max. :1785 Max. :61156 Max. :99001
添加坐标信息
proj4string(vent.map) <- “+proj=longlat +datum=WGS84”
显示舆图
plot(vent.map, axes=TRUE, border=”gray”)
R就会弹出新的窗口显示:如图-1所示:

原文链接:http://www.cnblogs.com/ventlam/archive/2012/11/15/2771619.html
