Skip to main content

ShapefileLoader

From-v2.3

Shapefile loader

LoaderCharacteristic
File FormatShapefile
Data FormatTable
Data FormatGeometry
File Extension.shp,
File TypeBinary, Multi-File
Supported APIsload, parse, parseSync
Decoder TypeSynchronous
Worker Thread SupportYes, For Some Loaders

Usage​

import {ShapefileLoader} from '@loaders.gl/shapefile';
import {load} from '@loaders.gl/core';

const data = await load(url, ShapefileLoader);

Options​

OptionTypeDefaultDescription
shp._maxDimensionsInteger4Shapefiles can hold up to 4 dimensions (XYZM). By default all dimensions are parsed; when set to 2 only the X and Y dimensions are parsed. Note that for some Shapefiles, the third dimension is M, not Z. header.type in the output designates the stored dimensions.

Output​

The ShapefileLoader's output looks like the following. data holds an array of GeoJSON Features. prj contains the Shapefile's projection string. header contains the Shapefile's header values, including a bounding box of the data and the file's geometry type. Consult the Shapefile specification for the meaning of the numeric types.

{
encoding: 'ISO-8859-1',
prj: null,
shx: {
offsets: Int32Array(8) [
50, 0, 0, 0,
0, 0, 0, 0
],
lengths: Int32Array(8) [
14, 0, 0, 0,
0, 0, 0, 0
]
},
header: {
magic: 9994,
length: 136,
version: 1000,
type: 11,
bbox: {
minX: 1,
minY: 2,
minZ: 3,
minM: 0,
maxX: 1,
maxY: 2,
maxZ: 3,
maxM: 0
}
},
data: [ { type: 'Feature', geometry: [Object], properties: [Object] } ]
}