• Fragstats:使用R软件读取frag78b.asc文件


    Fragstats中,有一个用于熟悉Fragstats软件的demon,在tutorial中的1种,有reg78b.asc文件,其文件内容是包含了山歌图像的行数和列数以及分辨率大小等基本信息。

    image

    采用R软件可以读入该文件以及显示该文件。

    image

    在文件选项中选择:改变工作目录 选项,制定到需要操作的文件夹作为工作目录。

    在文件中选择新建语言脚本文件,输入如下代码:

    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度旋转,所以需要对这个矩阵进行转换。这是必须的。

    运行以上代码,得到如下效果。

    image

    image

    image

  • 相关阅读:
    dreamvc框架(一)ioc容器的集成
    1040. Longest Symmetric String (25)
    虚指针存在证明及虚函数表
    Kibana中doc与search策略的区别
    AngularJS API之bootstrap启动
    AngularJS 技术总结
    Elasticsearch Javascript API增删改查
    AngularJS 中的Promise --- $q服务详解
    Ruby编程实践
    Ruby测试小代码[计算50以内的素数]
  • 原文地址:https://www.cnblogs.com/AmatVictorialCuram/p/4173756.html
Copyright © 2020-2023  润新知