配置要素排序顺序

尝试一下在线预览

这个示例展示如何使用字段值对图层的要素进行排序。 要素排序是在要素图层 orderBy 属性配置。

Configure feature sort order
55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 55 56 57 58 59 60 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
html>// Sort features by average traffic count// large symbols on top - small symbols on the bottom          layer.orderBy = [{
            field: "AADT",
            order: "descending"  // "descending" | "ascending"
          }];

允许您使用返回一个数字或者日期的任何字段或 Arcade 表达式进行要素排序。

在具有许多重叠要素的日期字段的图层中,此属性确保您最新的要素是在旧要素上绘制的。您还可以在比例符号地图(例如本示例中的地图)中使用此属性,使用渲染器使用的相同字段在大要素之上渲染小要素。

默认情况下,按客户端接收到要素的顺序呈现。因此,要素的排列是随机的。

1
layer.orderBy = null;

Default drawing order

图 A :佛罗里达州道路年平均日交通量。深色粗线表示交通流量大的道路,而浅色细线表示交通流量小的道路。在较大的道路要素上画一些较小的道路要素。这可能会出现随机渲染伪影。

在比例符号映射地图中,要素排列会建立一个清晰的视觉图层级结构。在许多情况下,最好一次能够看到所有数据。因此,通过要素与渲染器使用的字段按ascending 命令排序来实现,可以把小值要素排列在大值要素之上,使用户在视图中更容易看到大多数要素。

1
2
3
4
layer.orderBy = [{
  field: "AADT",
  order: "ascending"
}];

Ascending order

图 B :根据渲染器的字段按升序排列特性,将小要素显示在大要素之上,允许您一次查看全部或大部分数据。

也许你想实现相反的场景——在小要素之上渲染大要素,你可以将order 属性设置为 descending 来实现的小要素之上渲染大要素,确保它们总是最突出的。

1
2
3
4
layer.orderBy = [{
  field: "AADT",
  order: "descending"
}];

Descending drawing order

图 C :基于渲染器字段的降序对要素行排序,在小要素之上显示大要素。 这提供了一个清晰的视觉图层次结构,将大型、高流量的高速公路推向了较小的道路。 根据地图的用途,这或许是可取的。

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.