ArcGIS API for JavaScript开发之GeoJSONLayer

GeoJSONLayer

require(["esri/layers/GeoJSONLayer"], function(GeoJSONLayer) {
    /* code goes here */ });

GeoJSONLayer类用于创建基于GeoJSON的层。GeoJSON是一种用于编码各种地理数据结构的格式。GeoJSON数据必须符合RFC 7946规范,该规范声明坐标在SpatialReference.WGS84中。

(1)新建一个GeoJSONLayer

const geoJSONLayer = new GeoJSONLayer({
   
   url: "https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/all_month.geojson",//GeoJSON文件的URL
   copyright: "USGS Earthquakes",//该层的版权信息
});
map.add(geoJSONLayer);

(2)popupTemplate 弹出模板

该层的弹出模板。当在层上设置时,popupTemplate允许用户访问属性并在使用文本和/或图表选择特性时在视图的弹出窗口中显示其值。有关PopupTemplate如何与FeatureLayer交互的示例,请参见PopupTemplate示例。
当popup . defaultpopuptemplateenabled被设置为true时,如果没有定义popupTemplate,将自动使用一个默认的popup模板。

const lineTemplate = {
   
          title: "信息",
          content: `<div>
                      <p>管点编号:{管点编号}</p>
                      <p>起点X坐标:{起点X坐标}</p>
                      <p>起点Y坐标:{起点Y坐标}</p>
                      <p>终点X坐标:{终点X坐标}</p>
                      <p>终点Y坐标:{终点Y坐标}</p>
                      <p>Shape_Leng:{Shape_Leng}</p>
                      <p>起点点号:{起点点号}</p>
                      <p>终点点号:{终点点号}</p>
                      <p>起点埋深:{起点埋深}</p>
                      <p>终点埋深:{终点埋深}</p>
                      <p>起点高程:{起点高程}</p>
                      <p>终点高程:{终点高程}</p>
                      <p>材质:{材质}</p>
                      <p>埋设方式:{埋设方式}</p>
                      <p>线型:{线型}</p>
                      <p>管径:{管径}</p>
                      <p>建设日期:{建设日期}</p>
                      <p>权属单位:{权属单位}</p>
                      <p>使用状态:{使用状态}</p>
                      <p>流向:{流向}</p>
                      <p>所在道路:{所在道路}</p>
                      <p>Shape_Le_1:{Shape_Le_1}</p>
                      <p>Shape_Length:{Shape_Length}</p>
                    </div>`,
        };
const lineLayer = new GeoJSONLayer({
   
                url: './data/箱涵.json',
                popupTemplate: lineTemplate
            });

(3)renderer 渲染器

赋给图层的渲染器。渲染器定义了如何可视化层中的每个特性。根据呈现程序类型的不同,可以使用相同的符号来显示特性,也可以根据提供的属性字段或函数的值使用不同的符号来显示特性。
但是,当从客户端特性创建FeatureLayer时,必须在层的构造函数中指定此属性以及源、字段和objectIdField属性。

layer.renderer = {
   
  type: "simple",  
  symbol: {
   
    type: "simple-marker", 
    size: 6,
    color: "black",
    outline: {
   
      width: 0.5,
      color: "white"
    }
  }
}<
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值