Thêm game tại WuGames.ioTài trợKhám phá kho game trình duyệt miễn phí — chơi ngay, không tải, không đăng ký.Chơi ngay

Kiểm tra và Sửa GeoJSON

Công cụ kiểm tra và sửa GeoJSON theo RFC 7946 miễn phí. Kiểm tra cú pháp, sửa thứ tự cuộn đa giác (quy tắc bàn tay phải), kiểm tra giới hạn WGS84 và giảm độ chính xác tọa độ.

clearXóapasteDán
Upload
Kéo thả file GeoJSON vào đây
hoặc nhấp để chọn file
Số chữ số thập phân (6 ≈ 0,11 m tại xích đạo)

Công cụ kiểm tra và sửa GeoJSON là gì?

Công cụ kiểm tra và sửa GeoJSON là công cụ trực tuyến miễn phí giúp xác thực file GeoJSON, phát hiện lỗi phổ biến và tự động sửa các vấn đề. Nó đảm bảo dữ liệu GeoJSON của bạn tuân thủ tiêu chuẩn và sẵn sàng sử dụng trong các ứng dụng bản đồ.

Xác thực GeoJSON rất quan trọng cho các ứng dụng bản đồ web. GeoJSON không hợp lệ có thể gây lỗi hiển thị, sự cố ứng dụng hoặc hành vi không mong muốn trong các thư viện như Leaflet, Mapbox và OpenLayers.

Công cụ này không chỉ xác thực GeoJSON của bạn mà còn cung cấp khả năng sửa chữa tự động, sửa các vấn đề phổ biến như tọa độ trùng lặp, thứ tự sai và hình học bị biến dạng.

Lỗi GeoJSON phổ biến

Công cụ kiểm tra này phát hiện và sửa các vấn đề sau:

  • Thiếu hoặc sai thuộc tính 'type'
  • Định dạng hoặc thứ tự tọa độ không chính xác
  • Tọa độ ngoài giới hạn hợp lệ (-180 đến 180, -90 đến 90)
  • Tọa độ trùng lặp hoặc thừa
  • Vòng đa giác chưa đóng
  • Thứ tự đa giác sai (quy tắc bàn tay phải RFC 7946: vòng ngoài ngược chiều kim đồng hồ, lỗ theo chiều kim đồng hồ)
  • Thuộc tính trống hoặc null
  • Cấu trúc Feature hoặc FeatureCollection không hợp lệ

Cách sử dụng công cụ kiểm tra GeoJSON

Sử dụng công cụ kiểm tra rất đơn giản:

  • Dán dữ liệu GeoJSON hoặc tải file .geojson lên
  • Nhấp Kiểm tra để tìm lỗi
  • Xem kết quả kiểm tra và các vấn đề phát hiện
  • Chọn tùy chọn sửa để tự động sửa các vấn đề
  • Nhấp Sửa & Kiểm tra để tạo GeoJSON đã sửa
  • Tải xuống GeoJSON đã sửa hoặc sao chép để sử dụng

Công cụ cung cấp thông báo lỗi chi tiết cho biết chính xác vấn đề gì và nó xảy ra ở đâu trong cấu trúc GeoJSON của bạn.

Khả năng sửa chữa

Chức năng sửa có thể tự động sửa:

  • Xóa tọa độ liên tiếp trùng lặp trong LineStrings và Polygons
  • Làm sạch tọa độ thừa bằng Turf.js cleanCoords
  • Sửa thứ tự đa giác theo quy tắc bàn tay phải RFC 7946 (vòng ngoài ngược chiều kim đồng hồ, vòng trong (lỗ) theo chiều kim đồng hồ)
  • Xóa đối tượng thuộc tính trống hoặc giá trị null
  • Giảm độ chính xác tọa độ về số chữ số thập phân tùy chọn để giảm dung lượng file
  • Hiển thị so sánh dung lượng byte đầu vào và đầu ra ngay sau mỗi lần sửa

Sau khi sửa, công cụ sẽ xác thực lại GeoJSON để đảm bảo tất cả các vấn đề đã được giải quyết.

Ứng dụng và trường hợp sử dụng

Công cụ kiểm tra này hữu ích cho:

  • Xác thực GeoJSON trước khi sử dụng trong ứng dụng production
  • Gỡ lỗi tạo GeoJSON từ cơ sở dữ liệu hoặc API
  • Làm sạch file GeoJSON do người dùng tải lên
  • Đảm bảo tính tương thích GeoJSON giữa các thư viện bản đồ khác nhau
  • Giảm độ chính xác tọa độ dư thừa để giảm dung lượng file và điểm thừa
  • Chuẩn bị GeoJSON để lưu trữ và truyền tải hiệu quả tới tile Leaflet/Mapbox

Tiêu chuẩn xác thực GeoJSON

Công cụ này xác thực theo đặc tả GeoJSON chính thức (RFC 7946):

  • Loại hình học đúng: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, GeometryCollection
  • Định dạng tọa độ hợp lệ: [kinh độ, vĩ độ] hoặc [kinh độ, vĩ độ, độ cao]
  • Giới hạn tọa độ: kinh độ [-180, 180], vĩ độ [-90, 90]
  • Vòng đa giác: tọa độ đầu và cuối phải giống nhau (vòng đóng)
  • Thứ tự: vòng ngoài ngược chiều kim đồng hồ, vòng trong (lỗ) theo chiều kim đồng hồ (quy tắc bàn tay phải RFC 7946)
  • Thuộc tính Feature: phải là object (có thể trống hoặc null)

Tuân theo các tiêu chuẩn này đảm bảo GeoJSON của bạn hoạt động chính xác trên tất cả các triển khai tuân thủ.

Về Công cụ Kiểm Tra & Sửa GeoJSON

Công cụ Kiểm tra & Sửa GeoJSON kiểm tra mọi tài liệu GeoJSON theo chuẩn RFC 7946, đánh dấu các lỗi cấu trúc, vấn đề hình học và tọa độ ngoài phạm vi hoặc không phải số, rồi tự động sửa những lỗi phổ biến nhất - tọa độ thừa và trùng lặp, thuộc tính Feature rỗng, và thứ tự cuộn đa giác theo quy tắc bàn tay phải (vòng ngoài ngược chiều kim đồng hồ, lỗ theo chiều kim đồng hồ). Nó cũng giảm độ chính xác tọa độ dư thừa và hiển thị số liệu dung lượng byte trước và sau, bước tiêu chuẩn trước khi triển khai để thu nhỏ payload tile của Mapbox và Leaflet. Phù hợp cho chuyên viên GIS làm sạch dữ liệu khảo sát, lập trình viên bản đồ web gỡ lỗi nguồn tile, kỹ sư dữ liệu xây pipeline không gian và bất kỳ ai xuất từ QGIS, ArcGIS hay script tự viết muốn file nạp sạch sẽ trong Leaflet, Mapbox hoặc Turf.js mà không gặp bất ngờ. Xem thêm Địa Chỉ Sang Tọa ĐộGeohash Encoder Decoder.

Câu hỏi thường gặp

Nó xác thực đầu vào của bạn dựa trên RFC 7946 (đặc tả GeoJSON), kiểm tra rằng đối tượng gốc là FeatureCollection, Feature, hoặc Geometry; rằng mọi hình học có chính xác cấu trúc cần thiết cho loại đã khai báo (tọa độ Point có độ dài 2 hoặc 3, LineString ít nhất 2 vị trí, vòng Polygon được khép kín với ít nhất 4 vị trí); và tọa độ là số rơi vào phạm vi WGS84 hợp lệ (kinh độ ±180, vĩ độ ±90). Nó cũng xác nhận mỗi Feature có một thành viên geometry (có thể là null tường minh, một Feature không định vị) và properties là object hoặc null.

Các sửa chữa có sẵn gồm: làm sạch tọa độ thừa và trùng lặp liên tiếp bằng Turf.js cleanCoords; sửa thứ tự cuộn đa giác theo quy tắc bàn tay phải RFC 7946 (vòng ngoài ngược chiều kim đồng hồ, lỗ theo chiều kim đồng hồ); chuyển đối tượng thuộc tính Feature rỗng thành null; và giảm độ chính xác tọa độ về số chữ số thập phân tùy chọn để giảm dung lượng file. Mỗi sửa chữa chỉ được đếm khi thực sự thay đổi tài liệu, và sau khi sửa công cụ xác thực lại và hiển thị so sánh dung lượng byte trước và sau để bạn đo lường kết quả.

RFC 7946 yêu cầu các vòng ngoài của Polygon được cuộn ngược chiều kim đồng hồ khi nhìn từ trên (quy tắc bàn tay phải, cùng quy ước được OGC Simple Features dùng) và các vòng trong (lỗ) được cuộn theo chiều kim đồng hồ. Quy ước này quan trọng vì thuật toán điểm-trong-đa-giác và một số bộ render (đáng chú ý là Mapbox GL và deck.gl) dựa vào nó để quyết định bên nào là bên trong. Nếu dữ liệu của bạn được xuất bởi công cụ dùng quy ước ngược lại (một số shapefile ESRI cũ), lỗ có thể render thành đặc và bên trong đa giác có thể render thành trong suốt. Công cụ sửa chữa định hướng lại tất cả vòng theo thứ tự tuân thủ RFC.

Kinh tuyến đối ngang là đường kinh độ ở ±180 độ, nơi bán cầu đông và tây gặp nhau. Một LineString hoặc Polygon vượt qua nó có thể được mã hóa theo hai cách: như một feature đơn có kinh độ nhảy từ +179 đến -179 (mà hầu hết bộ render sẽ vẽ thành đường quấn toàn bộ địa cầu), hoặc như MultiLineString/MultiPolygon với hình học bị chia tại kinh tuyến đối ngang. RFC 7946 khuyến nghị dạng chia để tránh render quấn quanh. Công cụ này không tự động chia các hình học vượt kinh tuyến đối ngang; với bước đó hãy chạy ogr2ogr với -wrapdateline hoặc một thư viện chuyên cắt theo kinh tuyến đối ngang trước khi xác thực tại đây.

Công cụ tuân theo RFC 7946 (tháng 6 năm 2016), tiêu chuẩn GeoJSON hiện hành. Các bản nháp cũ hơn và biến thể như đặc tả 2008, GeoJSON-T (phần mở rộng thời gian), và GeoJSON-LD (phần mở rộng dữ liệu liên kết) được phân tích như JSON thông thường: các thành viên lạ được giữ lại và đi qua không thay đổi thay vì bị từ chối, nên các trường thêm của bạn vẫn tồn tại sau vòng xử lý. Bản nháp 2008 cho phép thành viên crs mà RFC 7946 loại bỏ; nếu file của bạn vẫn mang nó thì nó được giữ trong đầu ra, vì vậy hãy xóa thủ công nếu một bên tiêu thụ nghiêm ngặt từ chối nó. Đối với TopoJSON (định dạng liên quan nhưng khác biệt), dùng bộ chuyển đổi TopoJSON riêng.

Nguyên nhân phổ biến: (1) vĩ độ và kinh độ bị hoán đổi, vô hại về mặt hình học nhưng render sai quốc gia; (2) tọa độ ở CRS chiếu như UTM (thường giá trị hàng triệu) chưa bao giờ được chiếu lại sang WGS84; (3) giá trị DMS chưa chuyển sang độ thập phân; (4) độ cao bị đặt nhầm nơi kinh độ hoặc vĩ độ nên ở. Trình xác thực hiển thị mỗi giá trị ngoài phạm vi với chỉ số feature và đường dẫn thuộc tính để bạn sửa dữ liệu nguồn. Sau khi sửa, chạy lại trình xác thực cho đến khi bạn thấy không có lỗi trước khi triển khai tệp sang bản đồ sản xuất.

Mọi thứ chạy trong trình duyệt của bạn, nên dung lượng phụ thuộc vào bộ nhớ thiết bị. File đến vài megabyte được xác thực và sửa trong vài giây. Hàng chục megabyte sẽ chạy được trên máy bàn có vài gigabyte RAM trống nhưng có thể chậm vì toàn bộ tài liệu được phân tích vào bộ nhớ cùng lúc (JSON.parse, không streaming). Đối với các bản xuất rất lớn, hãy chia file theo vùng hoặc chạy trình xác thực phía máy chủ, hoặc dùng ogr2ogr -f GeoJSON -t_srs EPSG:4326 để xác thực và chiếu lại trong một lần. Giảm độ chính xác tọa độ tại đây trước có thể thu nhỏ đáng kể một file quá khổ trước khi xử lý tiếp.

Sáu chữ số thập phân kinh độ/vĩ độ tương đương khoảng 0,11 mét tại xích đạo, đã vượt độ chính xác của GPS dân dụng; bảy chữ số (khoảng 1 cm) bao quát dữ liệu cấp trắc địa. Vượt quá đó là nhiễu GPS vô nghĩa. Các bản xuất QGIS, ArcGIS và PostGIS thường phát ra 14 đến 15 chữ số thập phân, làm phình dung lượng file gấp hai đến năm lần mà không có lợi ích thấy được, đồng thời làm nặng payload tile của Mapbox và Leaflet. Bật Giảm độ chính xác tọa độ, chọn 6 (bản đồ web) hoặc 7 (dữ liệu khảo sát chính xác), và công cụ sẽ báo cáo dung lượng byte trước và sau để bạn xác nhận mức tiết kiệm. Để có cổng CI nghiêm ngặt, hãy chạy cùng kiểm tra với gói npm mã nguồn mở @placemarkio/check-geojson hoặc geojson-validation và làm hỏng build khi có bất kỳ lỗi nào.
Kiểm tra và Sửa GeoJSON — Công cụ kiểm tra và sửa GeoJSON theo RFC 7946 miễn phí. Kiểm tra cú pháp, sửa thứ tự cuộn đa giác (quy tắc bàn tay phải)
Kiểm tra và Sửa GeoJSON