Peta Pixel Nusantara - Peta Indonesia 8bit
收藏资源简介:
这是一个印度尼西亚的8位像素地图数据集,包含38个省和519个ADM2区域(县/市)的覆盖范围。数据以网格像素形式呈现,通过canvas最近邻渲染保持清晰、轻量且易于在Web、移动设备、游戏引擎或内部工具中重用。数据集提供开放源代码数据,包括交互式演示,支持离线使用、任意缩放级别的清晰显示,并具有O(1)命中测试的网格索引。
This is an 8-bit pixel map dataset of Indonesia, covering the territorial spans of 38 provinces and 519 ADM2-level regions (counties or cities). The data is presented in grid pixel format, rendered via canvas-based nearest-neighbor scaling to maintain clarity, remaining lightweight and easily reusable across web platforms, mobile devices, game engines, or internal tools. The dataset provides open-source data alongside interactive demos, supports offline use, enables crisp display at arbitrary zoom levels, and features grid indexing with O(1) hit testing.
数据集概述
Peta Pixel Nusantara 是一个将印度尼西亚行政边界光栅化为 8-bit 像素网格的开源数据集,并附带一个基于 Vanilla JavaScript 的交互式演示地图。
核心内容
- 数据规模:覆盖印度尼西亚 38 个省(Province)和 519 个县/市(Regency/City,即 ADM2 层级)。
- 数据格式:提供基于 Run-Length Encoding (RLE) 压缩的像素网格,支持 O(1) 时间复杂度命中测试。
- 可用格式:
- JavaScript 文件:
data/peta-hd-data.js,通过window.PETA_HD全局变量访问。 - JSON 文件:
data/peta-hd-data.json,适用于 Node.js 或任意 JSON 解析环境。
- JavaScript 文件:
主要特点
- 离线可用:加载文件后无需网络依赖即可工作。
- 像素级清晰:使用 nearest-neighbor 渲染,在任何缩放级别下保持锐利。
- 平台可移植:数据可被 Canvas 2D、WebGL、Flutter、React Native Skia、Unity、Godot 等任意支持绘制矩形的平台使用。
- 无构建步骤:演示页面(
index.html)无需任何构建工具、框架或后端即可直接运行。
数据结构关键字段(window.PETA_HD)
| 字段 | 说明 |
|---|---|
W, H |
像素网格宽度和高度(默认 1600 × 594) |
prov[] |
省列表,包含名称(n)、边界框、面积、中心点等元数据 |
kab[] |
县/市列表,包含名称、类型(t,如“Kota”)、所属省索引(p) |
provKab |
省到其下属县/市的快速索引映射 |
provRle, kabRle |
经 RLE 压缩的网格数据,值 255(省)/ 65535(县)表示海洋 |
演示交互功能
- 悬停:显示区域名称。
- 点击省:缩放至该省下辖的县/市视图。
- 拖拽:平移地图。
- 滚轮/按钮:缩放。
- Esc 键:逐步返回上一级视图。
数据来源与许可
- 省边界:来自 denyherianto/indonesia-geojson-topojson-maps-with-38-provinces(CC-BY-4.0)。
- 县/市边界:来自 geoBoundaries(CC-BY-4.0)。
- 代码许可:MIT License。
- 衍生数据:重新分发需保留原始数据来源的署名并遵守 CC-BY-4.0 条款。
典型使用场景
- 构建印度尼西亚的 8-bit 风格像素地图。
- 为社区、活动、人口或覆盖率数据提供聚合可视化。
- 作为无需瓦片服务器的交互式印度尼西亚地图基础层。
- 用于游戏、仪表盘或登陆页面中的国家/区域地图。




