antv-l7
10
总安装量
8
周安装量
#29897
全站排名
安装命令
npx skills add https://github.com/antvis/l7 --skill antv-l7
Agent 安装分布
claude-code
4
github-copilot
4
opencode
3
antigravity
3
gemini-cli
3
Skill 文档
AntV L7 Geospatial Visualization
AntV L7 æ¯åºäº WebGL çå¤§è§æ¨¡å°çç©ºé´æ°æ®å¯è§åå¼æï¼æ¯æå¤ç§å°å¾åºå¾å丰å¯çå¯è§åå¾å±ç±»åã
Quick Start
å建æç®åç L7 å°å¾åºç¨ï¼
import { Scene, PointLayer } from '@antv/l7';
import { GaodeMap } from '@antv/l7-maps';
// 1. åå§ååºæ¯
const scene = new Scene({
id: 'map',
map: new GaodeMap({
center: [120.19, 30.26],
zoom: 10,
style: 'light',
}),
});
// 2. æ·»å å¾å±
scene.on('loaded', () => {
const pointLayer = new PointLayer()
.source(data, {
parser: { type: 'json', x: 'lng', y: 'lat' },
})
.shape('circle')
.size(10)
.color('#5B8FF9');
scene.addLayer(pointLayer);
});
Core Workflow
L7 çå ¸åå¼åæµç¨ï¼
1. åºæ¯åå§å (Scene) â 2. æ°æ®åå¤ â 3. å建å¾å± (Layer) â 4. æ·»å äº¤äº â 5. ä¼åæ§è½
ð Reference Documentation
è¯¦ç»ææ¡£æé¢åç»ç»ï¼æ ¹æ®éè¦å è½½ï¼
åºç¡åè½ (references/core/)
- scene.md – Scene åå§åãçå½å¨æãæ¹æ³
- map-types.md – GaodeMapãMapboxãMaplibreãMap çé ç½®
æ°æ®å¤ç (references/data/)
- geojson.md – GeoJSON æ ¼å¼ãè§£æã转æ¢
- csv.md – CSV æ°æ®å è½½åå¤ç
- json.md – JSON æ°æ®ãOD æ°æ®ãè·¯å¾æ°æ®
- parser.md – Parser é ç½®ãTransform 转æ¢
å¾å±ç±»å (references/layers/)
- point.md – ç¹å¾å±ï¼æ£ç¹ãæ°æ³¡ã3D æ±ç¶
- line.md – 线å¾å±ï¼è·¯å¾ãå¼§çº¿ãæµçº¿
- polygon.md – é¢å¾å±ï¼å¡«å ã3D 建çãchoropleth
- heatmap.md – çåå¾ï¼å¯åº¦åå¸ãç½æ ¼çå
- image.md – å¾çå¾å±ï¼å«æå¾ãèªæå¾ãå¹³é¢å¾
- raster.md – æ æ ¼ç¦çå¾å±ï¼XYZ/TMS ç¦çæå¡
- other-layers.md – å ¶ä»å¾å±ç±»å
è§è§æ å° (references/visual/)
- mapping.md – é¢è²ã大å°ãå½¢ç¶æ å°
- style.md – éæåº¦ãæè¾¹ã纹ççæ ·å¼
交äºç»ä»¶ (references/interaction/)
- events.md – ç¹å»ãæ¬åãéä¸äºä»¶
- components.md – PopupãMarkerãControlsãLegend
å¨ç»ææ (references/animation/)
- layer-animation.md – å¾å±å¨ç»ã轨迹å¨ç»
æ§è½ä¼å (references/performance/)
- optimization.md – æ°æ®è¿æ»¤ãèåãå¾å±ç®¡ç
ä½¿ç¨æå
æç¨æ·éæ±éæ©ææ¡£
| ç¨æ·è¯·æ±ç¤ºä¾ | å è½½çææ¡£ |
|---|---|
| “å建ä¸ä¸ªå°å¾” | core/scene.md |
| “æ¾ç¤ºç¹ä½æ°æ®” | layers/point.md, data/geojson.md |
| “ç»å¶è·¯å¾” | layers/line.md |
| “çåå¾” | layers/heatmap.md |
| “æ·»å ç¹å»äºä»¶” | interaction/events.md |
| “æ¾ç¤ºå¼¹çª” | interaction/components.md |
æè½ç»å模å¼
夿鿱éè¦ç»åå¤ä¸ªæè½ï¼
åå¸å¯è§å = scene + polygon + point + events + popup
轨迹å¨ç» = scene + line + animation
çååæ = scene + heatmap + data/json
ä¾èµæ£æ¥
ä½¿ç¨ metadata/skill-dependency.json æ£æ¥æè½ä¾èµå
³ç³»ï¼
{
"point-layer": {
"requires": ["scene-initialization"],
"optional": ["source-geojson", "color-mapping"],
"nextSteps": ["event-handling", "popup"]
}
}
çæ¬ä¿¡æ¯
- å½åçæ¬: L7 2.x
- æµè§å¨æ¯æ: Chrome â¥60, Firefox â¥60, Safari â¥12
- åæ ç³»: WGS84 (å°çåæ ) / Plane coordinates (ç¬ç« Map)
- åºå¾: é«å¾·å°å¾ãMapboxãMaplibreãL7 Map (ç¬ç«)
æä½³å®è·µ
- åºæ¯åå§åä¼å : å§ç»ä»å建 Scene å¼å§
- æ°æ®æ ¼å¼è§è: ä¼å ä½¿ç¨ GeoJSON æ åæ ¼å¼
- æ§è½ä¼å : å¤§æ°æ®éæ¶ä½¿ç¨æ°æ®è¿æ»¤åèå
- æ¸è¿å¢å¼º: å å®ç°åºç¡åè½ï¼åæ·»å 交äºåå¨ç»
- é误å¤ç: æ·»å äºä»¶çå¬åæ°æ®éªè¯
å¿«éåè
常ç¨å¯¼å ¥
// æ ¸å¿
import { Scene } from '@antv/l7';
import { GaodeMap } from '@antv/l7-maps';
// å¾å±
import { PointLayer, LineLayer, PolygonLayer, HeatmapLayer } from '@antv/l7';
// ç»ä»¶
import { Popup, Marker } from '@antv/l7';
å°å¾æ ·å¼é项
'light'– æµ è²é£æ ¼'dark'– æ·±è²é£æ ¼'normal'– æ å飿 ¼'satellite'– 嫿影å'blank'– 空ç½åºå¾ï¼ç¬ç« Mapï¼
åæ æ ¼å¼
[ç»åº¦, 纬度]; // [120.19, 30.26]
// ç»åº¦: -180 ~ 180
// 纬度: -90 ~ 90
å æ°æ®
- skill-dependency.json – æè½ä¾èµå ³ç³»å¾
- skill-tags.json – ä¸è±ææ ç¾æ£ç´¢
- version-compatibility.json – çæ¬å ¼å®¹æ§ä¿¡æ¯
æ¥ç index.md è·å宿´æè½å表å导èªã