Model Buider中 List和Series的区别[转]

简介: http://www.3sbase.com/chxnews.asp?id=1433 在研究model近半年的日子里,个人觉得Model Buider中最难的部分当属Model的迭代反复即Iteration,而Iteration中最容易混淆的当属List和Series的概念。

http://www.3sbase.com/chxnews.asp?id=1433

在研究model近半年的日子里,个人觉得Model Buider中最难的部分当属Model的迭代反复即Iteration,而Iteration中最容易混淆的当属List和Series的概念。今天有幸得到一篇好文章(来自ESRI Geoprocessing Resource Center),结合自己的学习体会,结合例子,总结一下学习体验,望对学习Model Buider的各位有用。

上面两个Model分别使用了List和Series选项。使用Series的变量标识为“Series of Hurricane”,而使用List的对象标识为“List of Hurricane”。土地利用覆盖的栅格图层(美国东海岸100KM缓冲区范围)必须被每一个飓风所提取。输出的栅格序列必须和飓风轨迹做相关。

下面的列表帮助我们认识List和Series的不同。

(1)List如何工作

A:List是作为一个批处理进程,所有的工具或者进程在同一时刻可以运行List变量中的所有值。

B:List最佳利用场景是当你要让同一个进程,例如使用使用同一个输入以及一个列表的mask来使用Extract by mask来提取,或者将同一个字段添加给一个数据集列表又或者用同样的的一个表达式来计算变量列表中所有变量的值。

(2)在Model Buidler中如何来设置一个变量列表

A:创建一个变量,“List of Hurricane”

B:右击它的属性,然后在Geneal Tab上选择List of Values

D:在变量中添加变量列表

(3)Series如何工作

A:Series和List的区别在于Series中的值是一个接着一个在Tool或者Process中运行(即有多个Process),而List是List中的值在一个进程或Process中同时运行,即只有一个Process。

B:List主要是用于批处理,而Series主要用于模型的迭代和feedback循环。

(4)在ModelBuidler中如何来设置Series变量

A:创建一个变量,命名为“Series of Hurricane”

B:右击它的属性,然后在General Tab上选择Series of Values

C:为这个变量输入添加值或者数据集

D:从Model的主菜单中选择Model Properties,然后在Iteration Tab中,将“Get Iteration count from this variable” 的值设置为“Series of Hurricane”

List和Series的区别

从Model Buider的页面上看List和Series的区别在于它们的输出。如果这个变量是一个List的话,那么它的输出符号跟输入一样,是Multiple输出;而如果这个变量是Series的话,那么它的输入是一个Multiple Input而输出却是一个Single Output。如图所示:

在上面这张图中,同样的模型使用不同的List和Series选项。在第一个模型中,变量被申明为List,包含一个feature Class的序列,此时在Model Buidler中,Input和Output都展示为Multiple。而同样的模型,你可以将变量申明成Series。此时,Input显示为Multiple的样式,而Output却是Single的样式。两个模型的差别在于模型执行的方式。List方式是所有的Feature class在同一个工具中同时执行,而Series方式却是工具一个接着一个执行。

相关文章
|
8月前
|
存储 容器
List,linkeedlist集合介绍,特点,二者区别,增长因子,去重复
List,linkeedlist集合介绍,特点,二者区别,增长因子,去重复
|
10天前
|
存储 Python
Python中list, tuple, dict,set的区别和使用场景
Python中list, tuple, dict,set的区别和使用场景
|
9天前
|
存储 安全 程序员
老程序员分享:List、Map、Set之间的联系与区别:
老程序员分享:List、Map、Set之间的联系与区别:
|
2月前
|
Python
【Python 基础】列表(list)和元组(tuple)有什么区别?
【5月更文挑战第6天】【Python 基础】列表(list)和元组(tuple)有什么区别?
|
2月前
|
存储 Python
Python中的列表(list)和元组(tuple)区别
Python中的列表(list)和元组(tuple)区别
54 0
|
2月前
|
JavaScript 测试技术 项目管理
npm list 和 npm list -g 两个命令行的作用和区别
npm list 和 npm list -g 两个命令行的作用和区别
|
12月前
|
存储 开发者 索引
List 和 Set 集合的区别
List 和 Set 集合的区别
100 0
|
2月前
|
Python
python数据结构,列表(list)和元组(tuple)有什么区别?
python数据结构,列表(list)和元组(tuple)有什么区别?
|
2月前
|
C++ 容器
【C++】STL容器——探究List与Vector在使用sort函数排序的区别(14)
【C++】STL容器——探究List与Vector在使用sort函数排序的区别(14)
|
2月前
|
Python
list()与tolist()区别
python库方法list()与tolist()区别
63 0