• ArcGIS api for javascript——渲染-使用分级渲染


    描述

    本例使用一个分级渲染通过人口密度用符号表示Kansas。代码明确地增加类并为每一个定义颜色。使用ClassBreaksRenderer.addBreak()方法定义类,参数是在类中包含的最大值和最小值以及类使用的符号。

    注意"Infinity"用于表示最后的中断没有上限。

     1  
     2  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
     3    "http://www.w3.org/TR/html4/strict.dtd">
     4 
     5 <html lang="en">
     6   <head>
     7     <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     8     <meta http-equiv="X-UA-Compatible" content="IE=7" />
     9     <title>Class Breaks Renderer</title>
    10 
    11     <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.5/js/dojo/dijit/themes/tundra/tundra.css">
    12         <script type="text/javascript">var djConfig = {parseOnLoad: true }</script>
    13     <script type="text/javascript" src= "http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.5"></script>
    14 
    15     <script type="text/javascript" charset="utf-8">
    16       dojo.require("esri.map");
    17       dojo.require("esri.tasks.query");
    18 
    19       var map;
    20 
    21       function init() {
    22         map = new esri.Map("map", {
    23           extent: new esri.geometry.Extent(-102.61, 36.2, -93.82, 40.5, new esri.SpatialReference({wkid: 4326})),
    24           slider: false
    25         });
    26         dojo.connect(map, "onLoad", doQuery);
    27         map.addLayer(new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer"));
    28       }
    29 
    30       //查询所有国家 in Kansas
    31       function doQuery(map) {
    32         var queryTask = new esri.tasks.QueryTask("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/3");
    33         var query = new esri.tasks.Query();
    34         query.outFields = ["*"];
    35         query.returnGeometry = true;
    36         query.outSpatialReference = map.spatialReference;
    37         query.where = "STATE_NAME = 'Kansas'";
    38         queryTask.execute(query, addFeatureSetToMap);
    39       }
    40 
    41       //添加国家到地图并且应用渲染
    42       function addFeatureSetToMap(featureSet) {
    43         var symbol = new esri.symbol.SimpleFillSymbol();
    44         symbol.setColor(new dojo.Color([150,150,150,0.5]));
    45 
    46         //Add five breaks to the renderer.
    47         //If you have ESRI's ArcMap available, this can be a good way to determine break values.
    48         //You can also copy the RGB values from the color schemes ArcMap applies, or use colors
    49         //from a site like www.colorbrewer.org
    50         var renderer = new esri.renderer.ClassBreaksRenderer(symbol, "POP07_SQMI");
    51         renderer.addBreak(0,25,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([56, 168, 0,0.5])));
    52         renderer.addBreak(25,75,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([139, 209, 0,0.5])));
    53         renderer.addBreak(75,175,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([255,255,0,0.5])));
    54         renderer.addBreak(175,400,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([255,128,0,0.5]))); 
    55         renderer.addBreak(400,Infinity,new esri.symbol.SimpleFillSymbol().setColor(new dojo.Color([255,0,0,0.5])));
    56  
    57         map.graphics.setRenderer(renderer);
    58 
    59         var infoTemplate = new esri.InfoTemplate("${NAME}","${'*'}");
    60 
    61         // 添加 features 到地图
    62         dojo.forEach(featureSet.features, function(feature) {
    63           map.graphics.add(feature.setInfoTemplate(infoTemplate));
    64         });
    65       }
    66 
    67       dojo.addOnLoad(init);
    68     </script>
    69 
    70   </head>
    71   <body>
    72     <div id="map" class="tundra" style="800px; height:400px; border:1px solid #000;"></div>
    73   </body>
    74 </html>
    75  
  • 相关阅读:
    【转】python 面向对象(进阶篇)
    【转】Python 面向对象(初级篇)
    【转】MySQL— pymysql and SQLAlchemy
    【转】MySQL— 索引
    pycharm+pygame飞机大战
    python+Django创建购物网站(二)
    python语言系统学习(三)
    复习NLP-实战(九)----语言模型
    Linux常用命令--跟K8S相关
    Nginx-ingress-controller部署应用
  • 原文地址:https://www.cnblogs.com/xiaotian-222/p/6548281.html
Copyright © 2020-2023  润新知