GeoJSON (.geojson)
IETF StandarGeoJSON umum dipakai pada peta web, tetapi dukungan bervariasi. GitHub menampilkan file yang didukung dengan batasan; RFC 7946 menetapkan bujur sebelum lintang.
Konversi GEOJSON ke KML
Konverter GEOJSON ke KML gratis yang berjalan di peramban. Konversikan berkas secara instan di perangkat Anda.
Pemeriksaan & Metadata
Sistem operasi dan penganalisis file mengenali file GeoJSON dengan memeriksa urutan byte biner di bagian awal:
Tanda Tangan Header per Byte (Byte Penanda)
Sistem operasi dan penganalisis file mengenali file GeoJSON dengan memeriksa urutan byte biner di bagian awal:
TANDA TANGAN HEX (OFFSET 0):
7B 0A 20 20 22 74 79 70 65 22 3A 20 22 46 65 61 74 75 72 65REPRESENTASI ASCII: {\n "type": "Feature
Standardisasi: IETF RFC 7946
Spesifikasi Teknis
| Arsitektur Kontainer | Dokumen JSON yang mematuhi RFC 7946 untuk merepresentasikan Features, FeatureCollections, dan Geometries geografis |
| Kompresi | Teks tanpa kompresi (mudah dikompresi melalui HTTP dengan Gzip atau Brotli) |
| Urutan Byte | Aliran teks UTF-8 |
| Ruang Warna | N/A (Geographic Data) |
| Saluran & Struktur | Points, MultiPoints, LineStrings, MultiLineStrings, Polygons, MultiPolygons, GeometryCollections, dan properti kustom |
| Dimensi Maksimum | Ruang koordinat World Geodetic System 1984 (WGS 84): Bujur (-180 hingga +180), Lintang (-90 hingga +90) |
| Transparansi | None |
| Streaming & Progresif | GeoJSON berpembatas baris (GeoJSONL / GeoJSONSeq) memungkinkan streaming berkelanjutan jutaan fitur |
Perbandingan Teknis GeoJSON dengan Pesaing
| Atribut Teknis | GeoJSON (Saat Ini) | KML | GPX | SHP |
|---|---|---|---|---|
| Adopsi Pemetaan Web | Menjadi format bawaan universal untuk GIS web | Format bawaan Google Earth | Format bawaan perangkat GPS dan pelacak kebugaran | Standar lama pada GIS desktop |
| Urutan Koordinat | [Bujur, Lintang] (X, Y) | Bujur, Lintang, Ketinggian | Lintang, Bujur | Koordinat X, Y |
| Gaya Sintaksis | Nilai kunci JSON yang bersih | Tag XML yang panjang (<kml>) | Tag XML yang panjang (<gpx>) | Format biner yang terdiri dari beberapa file (.shp, .shx, .dbf) |
| Skema Properti | Objek properti JSON arbitrer | Tag skema ExtendedData | Tag skema GPX tetap | Kolom tetap dBase IV (.dbf) |
Pola Kerusakan Umum dan Panduan Pemulihan Hex
Titik peta muncul di samudra dekat Antartika alih-alih lokasi aslinya.
Penyebab Utama: Nilai Lintang dan Bujur secara tidak sengaja tertukar dalam array koordinat.
Pemulihan: Tukar urutan koordinat menjadi [bujur, lintang] menggunakan Konverter GeoJSON File2File.app.
Analisis Keamanan & Vektor Serangan Parser
Properti GeoJSON dapat berisi masukan apa saja dari pengguna. Bersihkan masukan tersebut sebelum menampilkannya di pop-up peta untuk mencegah XSS.
Vektor Serangan yang Diketahui
- Cross-site scripting (XSS) melalui HTML yang tidak di-escape dalam properti fitur GeoJSON yang dirender di tooltip peta.
- Penolakan layanan (Denial of Service) melalui GeometryCollection yang bersarang sangat dalam atau poligon berjuta-juta titik sudut.
- Server-Side Request Forgery melalui pemuatan fitur GeoJSON jarak jauh.
Praktik Terbaik Defensif: Bersihkan semua string teks properti dengan DOMPurify sebelum memasukkannya ke dalam jendela pop-up peta.
Asal-Usul & Tonggak Sejarah
Keunggulan & Kelebihan Utama
- Standar web bawaan: objeknya dapat langsung digunakan oleh pustaka pemetaan di peramban (Mapbox GL JS, Leaflet).
- Struktur JSON yang dapat dibaca manusia memungkinkan pembuatan, pemfilteran, dan penelusuran kesalahan secara terprogram dengan mudah.
- Skema properti bebas: tambahkan metadata apa saja (populasi, nama, kecepatan, pendapatan) langsung ke bentuk geometris.
Keterbatasan Teknis & Kekurangan
- Panjang teks: menyimpan koordinat titik mengambang sebagai digit ASCII berulang, yang mengarah pada ukuran file yang lebih besar daripada Shapefile biner atau FlatGeobuf.
- RFC 7946 secara ketat mewajibkan urutan [Bujur, Lintang] (Longitude, Latitude), yang sering kali membingungkan pengembang yang terbiasa dengan 'Lat/Long'.
- Poligon besar dengan jutaan titik sudut dapat menyebabkan perlambatan perenderan DOM peramban web.
Fakta Teknis Menarik
- Standar resmi GeoJSON mengurutkan koordinat sebagai [Bujur, Lintang] (urutan Kartesius X, Y), yang merupakan kebalikan persis dari cara orang berbicara ('Lintang, Bujur').
- GeoJSON umum dipakai pada peta web, tetapi dukungan bervariasi. GitHub menampilkan file yang didukung dengan batasan; RFC 7946 menetapkan bujur sebelum lintang.
- RFC 7946 mewajibkan batas poligon mengikuti 'aturan tangan kanan': titik-titik pada cincin luar harus berurutan berlawanan arah jarum jam.
Pertanyaan Teknis yang Sering Diajukan
Mengapa koordinat GeoJSON saya diurutkan berdasarkan [bujur, lintang] (longitude, latitude) alih-alih [lintang, bujur]?
GeoJSON umum dipakai pada peta web, tetapi dukungan bervariasi. GitHub menampilkan file yang didukung dengan batasan; RFC 7946 menetapkan bujur sebelum lintang.
Bagaimana cara mengonversi KML atau Shapefile ke GeoJSON?
Anda dapat mengonversi file Google Earth KML atau Esri Shapefile menjadi GeoJSON yang rapi dan siap digunakan di web dalam hitungan detik menggunakan File2File.app langsung di peramban Anda.
Apa perbedaan antara GeoJSON dan Shapefile?
Shapefile masih banyak digunakan untuk pertukaran data dan didukung oleh perangkat lunak GIS, tetapi struktur multi-file dan batasan atributnya dapat membuat GeoJSON atau geodatabase lebih sesuai untuk alur kerja tertentu.
Pasangan Konversi GeoJSON Terkait
Konversi vektor GeoJSON ke Google KML mengubah susunan koordinat JSON yang ringkas menjadi dokumen XML terstruktur untuk Google Earth dan Google Maps.
Mengonversi berkas Google KML ke GeoJSON mengubah data geografis XML hierarkis menjadi format Notasi Objek JavaScript ringan berbasis vektor untuk peta web modern.
Konversi data vektor GeoJSON ke GPX mengubah objek geografis JSON standar menjadi format berbasis XML yang dioptimalkan untuk perangkat navigasi fisik.