zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    从多渠道打包与友盟统计有这一篇就够了
    多渠道打包
    studio构建错误Element uses-permission#android.permission.ACCESS_NETWORK_STATE at AndroidManifest.xml:38:5-79 dupli
    ADB命令与monkey
    正则表达式和文本挖掘(Text Mining)
    一步一步教你使用Git
    Android常见开源解决方案
    Android Intent到底能做些什么
    支付宝集成
    Theano 学习三 conv2d
  • 原文地址:https://www.cnblogs.com/AmatVictorialCuram/p/4173756.html
Copyright © 2011-2022 走看看