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文件的更多相关文章

  1. Oracle DBA的神器: PRM恢复工具,可脱离Oracle软件运行,直接读取Oracle数据文件中的数据

    Oracle DBA的神器: PRM恢复工具,可脱离Oracle软件运行,直接读取Oracle数据文件中的数据 PRM 全称为ParnassusData Recovery Manager ,由 诗檀软 ...

  2. R语言笔记004——R批量读取txt文件

    R批量读取txt文件 本文数据,代码都是参考的是大音如霜公众号,只是自己跟着做了一遍. path<-'C:\\Users\\Administrator\\Desktop\\docs' docs& ...

  3. R中读取文件,找不到路径问题 No such file or directory

      R中读取文件,找不到路径问题 No such file or directory 近日,读取文件时.出现例如以下问题 > passenger = read.csv('internationa ...

  4. R语言读取文件

    1.R语言读取文件,文件类型为.txt 直接使用read.table()即可,若不知道当前的工作目录,可以使用函数getwd()来查看 2.R语言读取文件,文件类型为.xlsx 方法一:可以把excl ...

  5. [R语言]读取文件夹下所有子文件夹中的excel文件,并根据分类合并。

    解决的问题:需要读取某个大文件夹下所有子文件夹中的excel文件,并汇总,汇总文件中需要包含的2部分的信息:1.该条数据来源于哪个子文件夹:2.该条数据来源于哪个excel文件.最终,按照子文件夹单独 ...

  6. R语言--读取文件(数据输入)

    1 数据的输入 1.1 键盘输入 首先新建一张空表: dat<-data.frame(age=numeric(0),gender=character(0),weight=numeric(0)) ...

  7. 利用Python读取外部数据文件

      不论是数据分析,数据可视化,还是数据挖掘,一切的一切全都是以数据作为最基础的元素.利用Python进行数据分析,同样最重要的一步就是如何将数据导入到Python中,然后才可以实现后面的数据分析.数 ...

  8. Linux:Linux 常用命令讲解(软件、硬件、文件)

    一.Linux 常用命令 所有的命令操作都是在服务器上进行的 自学参考:菜鸟 Linux man + 命令:查看命令的文档: 命令  +  --usage:查看命令的文档: 命令  +  --help ...

  9. R软件导入数据_r语言怎么导入数据_R软件导入数据

    R软件导入数据_r语言怎么导入数据_R软件导入数据 R软件导入数据 1.Rcmdr安装包导入数据: 1.安装Rcmdr包,输入: install.packages("Rcmdr") ...

随机推荐

  1. 26.Generate Parentheses(生产有效括号的种类)

    Level:   Medium 题目描述: Given n pairs of parentheses, write a function to generate all combinations of ...

  2. LeetCode4. 两个排序数组的中位数

    4. 两个排序数组的中位数 问题描述 There are two sorted arrays nums1 and nums2 of size m and n respectively.Find the ...

  3. abp架构添加实体并使用迁移功能生成表

    参考: https://aspnetboilerplate.com/Pages/Articles/Introduction-With-AspNet-Core-And-Entity-Framework- ...

  4. Scrapy错误-no active project Unknown command: crawl

    在运行别人的scrapy项目时,使用命令行 scrapy crawl douban(douban是该项目里爬虫的名字,烂大街的小项目---抓取豆瓣电影). 执行之后,出现报错如下: 上网搜寻无果. 大 ...

  5. Java 不可变对象

    不可变对象(immutable objects):一旦对象被创建,它们的状态就不能被改变(包括基本数据类型的值不能改变,引用类型的变量不能指向其他的对象,引用类型指向的对象的状态也不能改变),每次对他 ...

  6. PIE SDK小波变换

    1.算法功能简介 小波变换是一种信号的时间——尺度分析方法,具有多分辨率分析的特点,而且在时频两域都具有表征信号局部特征的能力,是一种窗口大小固定不变但其形状可变,时间窗和频率窗都可变的时频局部化分析 ...

  7. Java非递归实现迷宫问题

    这个题目是本人的一次课程设计,也是我第一次独立做完的一个小玩意,说实话,昨晚的那一刻很有成就感.整个人开心到在自习室蹦起来.因为之前一直是自学的Java,从没有自己做过任何一个项目,这一个课程设计就花 ...

  8. FileSearch.java

    !=fileList.size()) { ]) { fileOutputStream.write(bytes; i < files.length; i++) {// 将其中的文件夹遍历出来,并调 ...

  9. (转)DB2中的一些函数

    DB2中的一些函数 原文:https://www.cnblogs.com/ShaYeBlog/archive/2012/08/27/2658025.html 最近用DB2,数据库之间的差异还是很大的, ...

  10. 昨天太晚了,今天教你用Debug模式来分析程序执行顺序

    还是以昨天的XML文件解析来做栗子,希望通过这个好吃的栗子可以举一反三 学会用debug来看源码和找Bug 事件类型主要有五种START_DOCUMENT:xml头的事件类型    = 0END_DO ...