https://docs.geoserver.org/latest/en/user/styling/sld/cookbook/points.html#example-points-layer
属性的值更改符号的大小
此样式包含三个规则。每一个都<Rule>
基于每个点的种群(“ pop”)属性的值来改变样式,较小的值产生较小的圆圈,较大的值产生较大的圆圈。
这三个规则的设计如下:
规则顺序 |
规则名称 |
人口(“流行”) |
尺寸 |
1个 |
SmallPop |
少于50,000 |
8 |
2 |
中等流行 |
50,000至100,000 |
12 |
3 |
大流行 |
大于100,000 |
16 |
在这种情况下,规则的顺序无关紧要,因为每个形状仅由单个规则绘制。
可以修改num属性列
第2-22行的第一条规则指定人口属性小于50,000的那些点的样式。 第5-10行设置了此过滤器,第6-9行设置了“小于”过滤器,第7行表示属性(“ pop”),第8行设置了50,000。该符号是一个圆圈(第14行),颜色是深蓝色(第16行#0033CC
位于),尺寸为直径8个像素(第19行)。
第二条规则在第23-49行上,为总体属性大于或等于50,000且小于100,000的点指定一种样式。填充过滤器设置在第26-37行。该过滤器比第一条规则长,因为需要指定两个条件而不是一个:“大于或等于”和“小于”过滤器。请注意And
在27行和36行。这要求两个过滤器都必须为真才能使规则适用。图形的大小在行46上设置为12个像素。所有其他样式指令均与第一条规则相同。
第50-70行的第三个规则为总体属性大于或等于100,000的点指定样式。填充滤镜设置在第53-58行上,唯一的不同是圆的大小,在此规则(第67行)中,圆的大小为16个像素。
这种风格的结果是,人口更多的城市拥有更大的积分
-
-
<StyledLayerDescriptor version=“1.0.0”
-
xsi:schemaLocation=“http://www.opengis.net/sld StyledLayerDescriptor.xsd”
-
xmlns=“http://www.opengis.net/sld”
-
xmlns:ogc=“http://www.opengis.net/ogc”
-
xmlns:xlink=“http://www.w3.org/1999/xlink”
-
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
-
<NamedLayer>
-
<Name>Simple point</Name>
-
<UserStyle>
-
<Title>GeoServer SLD Cook Book: Simple point</Title>
-
<FeatureTypeStyle>
-
<Rule>
-
<Name>颜色1</Name>
-
<Title>xzqhid</Title>
-
<ogc:Filter>
-
<ogc:PropertyIsLessThan>
-
<ogc:PropertyName>num</ogc:PropertyName>
-
<ogc:Literal>1000</ogc:Literal>
-
</ogc:PropertyIsLessThan>
-
</ogc:Filter>
-
<PointSymbolizer>
-
<Graphic>
-
<Mark>
-
<WellKnownName>circle</WellKnownName>
-
<Fill>
-
<CssParameter name=“fill”>#ee0f31</CssParameter>
-
</Fill>
-
</Mark>
-
<Size>8</Size>
-
</Graphic>
-
</PointSymbolizer>
-
</Rule>
-
<Rule>
-
<Name>MediumPop</Name>
-
<Title>50000 to 100000</Title>
-
<ogc:Filter>
-
<ogc:And>
-
<ogc:PropertyIsGreaterThanOrEqualTo>
-
<ogc:PropertyName>num</ogc:PropertyName>
-
<ogc:Literal>5000</ogc:Literal>
-
</ogc:PropertyIsGreaterThanOrEqualTo>
-
<ogc:PropertyIsLessThan>
-
<ogc:PropertyName>num</ogc:PropertyName>
-
<ogc:Literal>10000</ogc:Literal>
-
</ogc:PropertyIsLessThan>
-
</ogc:And>
-
</ogc:Filter>
-
<PointSymbolizer>
-
<Graphic>
-
<Mark>
-
<WellKnownName>circle</WellKnownName>
-
<Fill>
-
<CssParameter name=“fill”>#6bec27</CssParameter>
-
</Fill>
-
</Mark>
-
<Size>12</Size>
-
</Graphic>
-
</PointSymbolizer>
-
</Rule>
-
<Rule>
-
<Name>LargePop</Name>
-
<Title>Greater than 100000</Title>
-
<ogc:Filter>
-
<ogc:PropertyIsGreaterThanOrEqualTo>
-
<ogc:PropertyName>num</ogc:PropertyName>
-
<ogc:Literal>10000</ogc:Literal>
-
</ogc:PropertyIsGreaterThanOrEqualTo>
-
</ogc:Filter>
-
<PointSymbolizer>
-
<Graphic>
-
<Mark>
-
<WellKnownName>circle</WellKnownName>
-
<Fill>
-
<CssParameter name=“fill”>#afa135</CssParameter>
-
</Fill>
-
</Mark>
-
<Size>16</Size>
-
</Graphic>
-
</PointSymbolizer>
-
</Rule>
-
</FeatureTypeStyle>
-
</UserStyle>
-
</NamedLayer>
-
</StyledLayerDescriptor>转自:https://blog.csdn.net/u014572215/article/details/108753427