当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS CSVLayer用法及代码示例


基本信息

以下是所在类或对象的基本信息。

AMD: require(["esri/layers/CSVLayer"], (CSVLayer) => { /* code goes here */ });

ESM: import CSVLayer from "@arcgis/core/layers/CSVLayer";

类: esri/layers/CSVLayer

继承: CSVLayer > Layer > Accessor

自从:用于 JavaScript 4.1 的 ArcGIS API

用法说明

概述

CSVLayer 是基于 CSV 文件(.csv、.txt)的点图层。 CSV 是一种plain-text 文件格式,用于表示表格数据,包括地理点要素(纬度、经度)。通常,纬度坐标是 Y 值,经度坐标是 X 值。 X、Y 坐标必须存储在 csv 提要中的SpatialReference.WGS84 中。

CVSLayer 一次获取所有数据,并在加载时将它们存储在客户端。但是,如果设置了刷新间隔或调用了 refresh() 方法,CSVLayer 将发出服务器端请求以获取更新的数据。请参阅 FeatureLayer 的 querying your data 部分以了解有关如何查询 csv 数据的更多信息,并参阅 data visualization 部分以了解如何更改 CSVLayer 的可视化效果。

创建 CSVLayer

CSVLayer 是通过将其 url 属性设置为指向 csv feed 或内存中 csv 数据的 blob url 来创建的。如果 csv 数据在预定义字段之一中不包含 x、y 坐标,请通过设置 latitudeField 和 longitudeField 属性来指定纬度和经度字段的名称。纬度和经度字段的值必须存储在 csv feed 中的 WGS84 中。因此,CSVLayer 的空间参考将默认为 WGS84。但是,您可以指定图层的空间参考以匹配视图的spatialReference,以提高性能。

引用 csv 提要 URL

要从 csv feed 创建 CSVLayer 实例,您必须将 url 属性设置为 csv feed 的 url。如果 CSV 源与应用程序不在同一域中,则需要 CORS enabled serverproxy

require(["esri/layers/CSVLayer"], function(CSVLayer){
  // points to the states layer in a service storing U.S. census data
  const csvLayer = new CSVLayer({
    url: "https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_week.csv",
    copyright: "USGS Earthquakes"
  });
  map.add(csvLayer);  // adds the layer to the map
});

通过 blob url 引用内存 csv 数据

您还可以通过将 blob url 传递到图层的 url 属性,从内存中的 csv 数据创建 CSVLayer。以下代码片段展示了如何从 blob url 创建新的 CSVLayer。

// Pass data by a blob url to create a CSV layer.
const csv = `name|year|latitude|Longitude
aspen|2020|40.418|20.553
birch|2018|-118.123|35.888`;

const blob = new Blob([csv], {
  type: "plain/text"
});
let url = URL.createObjectURL(blob);

const layer = new CSVLayer({
  url: url
});

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 CSVLayer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。