kikita & Maps

GIS,spatial and artificial intellegence learning and share

高斯克吕格/Gauss Kruger兰伯特/Lambert墨卡托/Mercator……这些是业内人士耳熟能详的 投影方法,它们各有适用场景以确保投影后某类或某几类变形最小,其最终要义就是最大程度地精确表示位置。然而,这一篇中不是对这些投影方法进行阐述,而是传递一些新奇特的投影玩法。

ArcGIS中提供了众多的坐标系统定义信息,有些 投影坐标系一直静静存在,只是没有被关注,今天我们一起翻几个牌子。


准备示例数据,世界大洲及格网数据,当前是地理坐标系 WGS1984,首次拖拽到 ArcMap看起来是我们最熟悉的这个样子:

下面我们变换不同的投影方法,看看世界发生了什么变化。



埃托夫投影/Aitoff projection

将世界投影到长短轴为2:1的椭圆上,有关这个投影方法的说明,戳 这里

Read more »

在使用栅格数据时,黑边和白边问题比较困扰我们,╮(╯-╰)╭ ,丑丑地如下所示:

那如何处理这些问题呢?方法不是唯一的,我把 ArcMap 中最常用的几种方式列举一下,帮你给数据“化妆”,或者更确切的说是“整容”:



Option 1 栅格计算器

在去黑边之前最先需要了解的是黑边的像元值是什么? 可以使用 Identify 工具查查看。 例如这份数据是 0。

这时,你也许会想到设置图层背景值的色彩可以吧?

如果仅为了显示使用,是可以解决问题的,但传统意义上的去黑边,我们一般理解成栅格数据的处理,也就是从存储上修改特定值(本例中是 0)值为 Nodata。

单波段数据处理起来常常相对容易些,最常用的工具就是 栅格计算器/Raster Calculator 了。Raster Calculator 可以通过输入的Python语法的表达式,对当前数据框内的栅格图层进运算。它是个非常实用的栅格数据处理工具,如果你想 Dive In ,点 这里了解 Raster Calculator 的工作原理。

Read more »

ArcGIS 产品家族的 Web 3D 功能众多用户期待已久,从 ArcGIS 10.3.1 版本开始,Esri 放了个大招,千呼万唤始出来的 Web 3D 功能,终于不再犹抱琵琶半遮面了。 那到底如何将创建和发布3D场景呢? 下面就把今天的测试过程记录下。


测试环境

硬件

  • 处理器:Intel Core i7 4710MQ @ 2.50GHz
  • 内存:16G
  • 显卡:NVIDIA GeForce GT 730M

OS

  • Windows 10 Pro

软件

  • ArcGIS Pro 1.1.1 (必要)
  • ArcGIS for Server 10.3.1 (必要)
    包括:
  • Portal for ArcGIS
  • ArcGIS Web Adpter (IIS)
  • ArcGIS Data Store
  • ArcGIS for Desktop 10.3.1
  • CityEgnine 2015.2

Read more »

Shapefile是上个世纪90年代的数据格式,但是由于它开放易用至今仍然倍受欢迎,最近与shapefile编码相关的问题此起彼伏连绵不绝,整理下几个高频问题共享之。


为什么我的shapefile在ArcGIS 10.3中打开乱码?


原因

这个问题的根本原因就是读取文件使用的编码类型和文件实际存储的编码类型不一致。

Shapefile文件的头文件(dBase Header)中,一般会包含shapefile使用的编码类型的信息,这个信息成为 LDID ( Language Driver ID),这样在使用应用程序打开 shapefile 的时候,应用程序就知道用何种编码类型去正确读取它,而不会发生乱码。 在 ArcGIS Desktop 生产的 shapefile 数据中通常会包含这项信息。在Shapefile的子文件中,有时我们还会发现同名 ***.cpg** 文件,文件中也存储了编码信息,用记事本打开,看到例如 utf-8。

二者被ArcGIS 识别的优先顺序是,LDID 优先于 CPG文件。也就是如果头文件中没有约定读shapefile的编码类型时,如果这时刚好有个CPG文件,那么ArcGIS就会使用这里的编码类型读取。

我们知道 shapefile 是个开放格式,只要你了解了数据规范,完全可以脱离ArcGIS自己生产出来。在Windows中文语言设置下,假设你自己写代码或者使用第三方的程序生产了shapefile,例如MapGIS,默认使用 CP936(GBK)编码存储,但是无论粗心大意还是有意为之没有在数据头文件中约定“我用了936!”。如果是 ArcGIS 10.2 和之前的版本,那么没问题,ArcGIS 默认就是以这种方式识别,没有乱码。可是拿到 ArcGIS 10.2.1 ,ArcGIS 10.2.2,ArcGIS 10.3.x 这几个版本中发现乱!码!了!在缺失 LDID 和 CPG时,这几个版本默认使用 UTF-8 来读取 shapefile,这样必然乱码了。


Read more »

ModelBuilder 是 ArcGIS for Desktop 产品中最可爱的功能之一,它可以尽可能免代码地将我们从重复劳动中解放出来。使用 ModelBuilder 的过程常常被比喻为“搭积木”,我们只需要拿着 ArcGIS for Desktop 中为我们提供的“积木”去搭建满足于自己的特定工作流模型。

再打个比方,我们要实现的某个功能比作是自己做面包。首先要准备食材,例如面粉、牛奶、鸡蛋、黄油、糖、盐、酵母,类比为 地理数据; 食材齐备了,就可以顺序开始和面、发酵、烘焙,这些工作由特定的器具承担,例如各种烘焙工具、烤箱,就好比ArcGIS提供的 工具,例如 ArcToolbox中的工具们; 面包制作过程中可以根据自己口味,规定发酵时间、控制糖和盐的多少等,这就类比为工具的自定义 参数

如果自己享受整个烘焙的过程,不厌其烦地面面俱到,那大可维持现状;可是如果你觉得做面包是个体力活,你只是想吃到自家面包,而希望把做面包的过程“外包”出去,那么面包机的市场就来了。这篇blog就和大家说说如何制作“面包机”。


1 明确需求

我们从一个简单常见的实例开始……

需求:现有一些表示各种研究对象的地理数据,小明希望把所有研究数据变换到需要的坐标系统,并且全部裁剪至研究范围。

如果只有一份数据,小明会不假思索的找到 ArcToolbox中的 Project和Clip工具,顺序执行即可解决问题;如果是3+份数据,小明可能会想,该做个工具了。


2 构建工作流

Read more »
0%