自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

R語言與GIS實踐:Shapefile導(dǎo)入與地圖顯示

大數(shù)據(jù)
R語言和GIS的結(jié)合,之所以要使用R語言是因為R語言能夠以Hadoop集成,希望利用R語言更高效地處理空間聚類問題。

1. R項目簡介

R是一個開源的統(tǒng)計計算和圖形編程語言和軟件環(huán)境,廣泛應(yīng)用于統(tǒng)計分析和數(shù)據(jù)挖掘[1]。R項目遵循GNU協(xié)議,它的軟件環(huán)境源碼由C,Fortran和R寫就。R可以運行在多個平臺,包括各種Unix,Linux發(fā)行版本,Window和MacOS上, 國內(nèi)有中科院、廈門大學(xué)、北京交通大學(xué)等多個鏡像[2]。R是對S語言的一種實現(xiàn),由Ross Ihaka 和 Robert Gentleman 所創(chuàng)建,R取之他們名字的首字母。R具有由用戶貢獻的大量的類庫,能夠處理各種科學(xué)計算的問題。

2.R與GIS

與地學(xué)問題相關(guān)的R類庫也十分繁多,包括Spatial data,Maptools,RGdal等。 不過似乎StackOverflow的主站關(guān)于R在GIS的問題比GIS分站更為活躍。原因未知……之所以要使用R是因為R能夠以Hadoop集成[3],希望利用R更高效地處理空間聚類問題。雖然Mashout也是一個很好的解決方案,但是感覺用戶更加需要腳本式的問題處理工具。R的GIS的書籍比較少,基本都是以文檔的形式存在,其中Applied spatial data analysis with R是一本挺好的教材。多使用Example命令和Google也是學(xué)習(xí)R的一個好途徑。

3.Shapefile導(dǎo)入與地圖顯示

R語言中導(dǎo)入Shapefile是非常容易的,可以使用的包,包括RGdal,maptools,PBSmapping等。在這里我們采用maptools和sp兩個類庫來實現(xiàn)地圖數(shù)據(jù)的導(dǎo)入和顯示。在R中心選擇鏡像并下載。

加載這兩個類庫,輸入如下代碼:

  1. library(maptools) 
  2. library(sp) 

讀取shapefile文件,可以直接輸入文件路徑或者通過file.choose函數(shù)來選擇文件,這里采用國家基礎(chǔ)地理信息系統(tǒng)1比400萬數(shù)據(jù)中的省界國界。

  1. vent.map <-readShapeSpatial(file.choose()) 

或者選擇點、線、面類型輸入

  1. point.mp <- readShapePoints(file.choose()) 
  2. line.mp <- readShapeLines(file.choose()) 
  3. poly.mp <- readShapePoly(file.choose()) 

注意,這個命令并不導(dǎo)入Shapefiel的Proj文件,所以導(dǎo)入的是無坐標(biāo)信息的數(shù)據(jù)。

  1. print(proj4string(vent.map)) 

輸出是:

[1] NA

查看shapefile屬性,添加坐標(biāo)信息

  1. summary(vent.map) 

輸出是:

  1. Object of class SpatialLinesDataFrame 
  2. Coordinates: 
  3.         min       max 
  4. x 73.446960 135.08583 
  5. y  3.408477  53.55793 
  6. Is projected: NA 
  7. proj4string : [NA] 
  8. Data attributes: 
  9.      FNODE_           TNODE_           LPOLY_          RPOLY_          LENGTH 
  10.  Min.   :   1.0   Min.   :   1.0   Min.   :  1.0   Min.   :  1.0   Min.   : 0.0040 
  11. st Qu.: 433.0   1st Qu.: 432.0   1st Qu.:  1.0   1st Qu.:  1.0   1st Qu.: 0.0300 
  12.  Median : 876.0   Median : 880.0   Median :  1.0   Median : 65.0   Median : 0.0700 
  13.  Mean   : 927.6   Mean   : 929.9   Mean   :128.8   Mean   :210.8   Mean   : 0.5421 
  14. rd Qu.:1344.0   3rd Qu.:1344.0   3rd Qu.:204.0   3rd Qu.:327.0   3rd Qu.: 0.2350 
  15.  Max.   :2131.0   Max.   :2131.0   Max.   :925.0   Max.   :926.0   Max.   :16.7130 
  16.     BOU2_4M_      BOU2_4M_ID        GBCODE 
  17.  Min.   :   1   Min.   :    1   Min.   :26010 
  18. st Qu.: 447   1st Qu.:  219   1st Qu.:26010 
  19.  Median : 893   Median :26010   Median :26010 
  20.  Mean   : 893   Mean   :17260   Mean   :35583 
  21. rd Qu.:1339   3rd Qu.:26010   3rd Qu.:61010 
  22.  Max.   :1785   Max.   :61156   Max.   :99001 

添加坐標(biāo)信息

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

4.參考文獻

[1]R (programming language) 2012 http://en.wikipedia.org/wiki/R_(programming_language)

[2]The R Project for Statistical Computing 2012

http://www.r-project.org/

[3]RevolutionAnalytics / RHadoop 2012 https://github.com/RevolutionAnalytics/RHadoop

 

 

責(zé)任編輯:彭凡 來源: 博客園
相關(guān)推薦

2023-09-21 22:02:22

Go語言高級特性

2018-09-26 19:51:07

數(shù)據(jù)分析Kaggle員工離職

2018-04-20 09:06:11

R語言數(shù)據(jù)存儲

2024-02-26 08:15:43

語言模型低代碼

2015-07-02 09:40:57

R語言優(yōu)勢缺點

2014-12-15 10:16:47

SwiftR語言

2013-05-10 16:42:26

2012-06-25 09:55:53

諾基亞地圖Windows Pho

2016-07-27 09:30:02

語言RJS

2017-05-02 16:29:11

Webpack技巧建議

2024-12-05 12:01:09

2018-01-11 17:22:20

PHP大數(shù)據(jù)開發(fā)

2017-03-24 10:56:21

Webpack技巧建議

2024-11-18 16:15:00

2020-05-22 09:12:46

HTTP3網(wǎng)絡(luò)協(xié)議

2020-06-05 08:38:39

python散點圖擬合

2021-02-05 18:22:51

GoC剖析

2010-07-21 14:17:36

SQL Server數(shù)

2023-12-06 13:18:00

物聯(lián)網(wǎng)
點贊
收藏

51CTO技術(shù)棧公眾號