Fragstats:使用R軟體讀取frag78b.asc檔案

來源:互聯網
上載者:User

標籤:

Fragstats中,有一個用於熟悉Fragstats軟體的demon,在tutorial中的1種,有reg78b.asc檔案,其檔案內容是包含了山歌映像的行數和列數以及解析度大小等基本資料。

採用R軟體可以讀入該檔案以及顯示該檔案。

 

在檔案選項中選擇:改變工作目錄 選項,制定到需要操作的檔案夾作為工作目錄。

在檔案中選擇建立語言指令檔,輸入如下代碼:

m<-as.matrix(read.table(‘reg78b.asc‘))

//將檔案reg78b.asc作為矩陣讀入到對象m中去。

uv<-sort(unique(as.vector(m)))

//為土地覆蓋的每一個分類分配顏色,識別出每一個單一的類值。

my.breaks<- (c(min(uv)-2, uv) + c(uv, max(uv)+2 ))/2

//為每個類分配的顏色建立色差(色差是最小值-1,中點和最大值+1)。注意,這是有必要的因為繪圖函數image的設計師針對於連續變化的土地覆蓋映像,而不是針對於分類的土地覆蓋映像。

my.colors<-c(‘gray‘,‘lightskyblue‘,‘lightgreen‘,‘lightpink‘,‘lightyellow‘,‘yellow‘, ‘purple‘,‘slateblue‘,‘green‘,‘skyblue‘,‘black‘)

//為繪圖層建立顏色標籤。

if(length(my.colors) != length(uv)) stop("You need a color for every unique value") //檢查並確認每一個顏色對於相應的類值是唯一的。 data.frame(code=uv, color=my.colors)

//在控制台上輸出每一個顏色對應的分類值。

image(t(m)[,nrow(m):1],asp=1,breaks=my.breaks,col=my.colors)

//採用映像庫中的繪圖函數image()函數來繪圖。注意,因為image()函數對映像做了一個逆時針的90度旋轉,所以需要對這個矩陣進行轉換。這是必須的。

運行以上代碼,得到如下效果。

 

 

Fragstats:使用R軟體讀取frag78b.asc檔案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.