Skip to content

Trình giảm dung lượng TopoJSON

Sử dụng công cụ giảm dung lượng TopoJSON trực tuyến miễn phí này để giảm kích thước tệp bằng cách tối ưu hóa độ chính xác của transform và loại bỏ các thuộc tính, một cách nhanh chóng và dễ dàng, mà không cần cài đặt phần mềm.

Nhấn nút TẢI LÊN TỆP và chọn các tệp TopoJSON bạn muốn giảm dung lượng. Chờ quá trình xử lý hoàn tất và tải xuống các tệp riêng lẻ hoặc nhóm lại với nhau.

Tất cả quá trình xử lý diễn ra trong trình duyệt của bạn—không có dữ liệu nào được tải lên máy chủ.

TopoJSON là gì?

TopoJSON là một phần mở rộng của GeoJSON, mã hóa topology thay vì chỉ hình học. Thay vì lưu trữ tọa độ của từng đa giác riêng biệt (gây ra sự trùng lặp lớn đối với các vùng liền kề), TopoJSON lưu trữ các cung ranh giới chung một lần và tham chiếu chúng từ nhiều hình học. Mã hóa topology này thường giảm kích thước tệp xuống 80% hoặc hơn so với GeoJSON tương đương, khiến nó trở thành lựa chọn lý tưởng cho bản đồ web với các quốc gia, tiểu bang, quận hoặc bất kỳ đa giác liền kề nào.

Các tệp TopoJSON sử dụng tọa độ số nguyên được lượng hóa với một transform (giá trị scale và translate) để chuyển đổi chúng trở lại tọa độ địa lý. Việc lượng hóa này tương tự như việc giảm độ chính xác thập phân trong GeoJSON, nhưng được tích hợp trực tiếp vào định dạng.

Ưu điểm của TopoJSON

  • Giảm kích thước tệp đáng kể — Thường nhỏ hơn 80-95% so với GeoJSON tương đương
  • Bảo toàn topology — Ranh giới chung được lưu trữ một lần, đảm bảo căn chỉnh hoàn hảo
  • Hiệu quả trong việc hiển thị — Các thư viện như D3.js có thể hiển thị TopoJSON trực tiếp
  • Nén tốt hơn — Nén gzip hoạt động tốt hơn trên TopoJSON so với GeoJSON
  • Lý tưởng cho bản đồ choropleth — Hoàn hảo cho các hình ảnh hóa ranh giới quốc gia/tiểu bang/quận

Nhược điểm của TopoJSON

  • Ít được hỗ trợ phổ biến — Ít công cụ hỗ trợ TopoJSON hơn so với GeoJSON
  • Cần chuyển đổi — Hầu hết các thư viện bản đồ web cần chuyển đổi TopoJSON sang GeoJSON trước
  • Cấu trúc phức tạp hơn — Khó đọc và chỉnh sửa thủ công hơn GeoJSON
  • Không lý tưởng cho dữ liệu điểm — Lợi ích topology chỉ áp dụng cho các ranh giới chung
  • Truy cập thuộc tính hạn chế — Các thuộc tính được lưu trữ trong các đối tượng riêng biệt, không trực tiếp với hình học

Tại sao cần giảm dung lượng TopoJSON?

TopoJSON mã hóa topology bằng cách sử dụng tọa độ số nguyên được lượng hóa với một transform (scale và translate). Nhiều tệp TopoJSON mang theo các giá trị thập phân dư thừa trong transform và bao gồm các thuộc tính lớn không cần thiết cho việc hiển thị. Việc giảm độ chính xác của transform và loại bỏ các thuộc tính không cần thiết có thể giảm kích thước tệp xuống 30-60% ngoài khả năng nén vốn có của TopoJSON, trong khi việc xóa khoảng trắng giúp tiết kiệm thêm dung lượng.

Các tệp TopoJSON được tối ưu hóa tải nhanh hơn, giảm chi phí băng thông và cải thiện hiệu suất hiển thị bản đồ. Công cụ này giúp bạn tạo các tệp topology gọn nhẹ hơn bằng cách:

  • Giảm độ chính xác của transform — Điều chỉnh số thập phân của scale/translate với hướng dẫn "lưới tại xích đạo" trực quan
  • Lọc thuộc tính — Chỉ giữ các thuộc tính cần thiết, loại bỏ các thuộc tính không sử dụng
  • Xử lý hàng loạt — Tải lên và xử lý nhiều tệp TopoJSON cùng lúc
  • Cài đặt mặc định thông minh — Tự động tối ưu hóa với các cài đặt độ chính xác cân bằng
  • Xem trước kết quả — Kiểm tra kết quả đã giảm dung lượng trước khi tải xuống
  • Xóa khoảng trắng — Loại bỏ tất cả định dạng không cần thiết
  • 100% xử lý trên máy khách — Không tải lên máy chủ, đảm bảo quyền riêng tư hoàn toàn

Cách giảm dung lượng TopoJSON

  1. Tải lên tệp — Kéo và thả nhiều tệp .topojson hoặc .json vào vùng tải lên, hoặc nhấn "Duyệt tệp"
  2. Xem trước kết quả — Các tệp được giảm dung lượng ngay lập tức với cài đặt mặc định
  3. Điều chỉnh tùy chọn (tùy chọn) — Thay đổi độ chính xác của transform, chọn thuộc tính cần giữ/xóa
  4. Xem trước — Nhấn "Xem trước" để kiểm tra kết quả đã giảm dung lượng
  5. Tải xuống — Nhấn nút tải xuống bên cạnh bất kỳ tệp nào để lưu phiên bản đã được tối ưu hóa
  6. Xóa — Sử dụng "Xóa tất cả" để loại bỏ tất cả tệp và bắt đầu lại

Hiểu về độ chính xác của transform

Transform của TopoJSON chứa các mảng scale và translate với các giá trị thập phân. Scale xác định độ chính xác của tọa độ được lượng hóa. Việc giảm số thập phân của scale tương tự như giảm độ chính xác tọa độ trong GeoJSON—số thập phân ít hơn nghĩa là kích thước lưới lớn hơn nhưng tệp nhỏ hơn.

Gợi ý "Lưới tại xích đạo" cho thấy cách việc giảm độ chính xác ảnh hưởng đến độ chính xác thực tế, giúp bạn chọn sự cân bằng phù hợp cho trường hợp sử dụng của mình. Đối với hầu hết các bản đồ web, cài đặt mặc định cung cấp chất lượng tuyệt vời trong khi tối đa hóa việc giảm kích thước tệp.

Xử lý hàng loạt & Hỗ trợ tệp lớn

Công cụ trực tuyến miễn phí này xử lý các tệp TopoJSON lớn một cách hiệu quả. Trên các trình duyệt hiện đại, nó có thể xử lý các tệp trên 100MB mà không bị treo. Các tệp được tối ưu hóa với cài đặt mặc định thông minh khi tải lên, cung cấp phản hồi ngay lập tức. Điều chỉnh cài đặt để xử lý lại tất cả các tệp, sau đó tải xuống riêng lẻ hoặc xem trước từng kết quả.

Khi nào nên sử dụng TopoJSON thay vì GeoJSON

Sử dụng TopoJSON khi:

  • Bạn có các đa giác liền kề (quốc gia, tiểu bang, khu vực điều tra dân số, mã ZIP)
  • Kích thước tệp là yếu tố quan trọng (người dùng di động, giới hạn băng thông)
  • Bạn cần đảm bảo căn chỉnh ranh giới giữa các đối tượng
  • Tạo bản đồ choropleth hoặc hình ảnh hóa ranh giới

Sử dụng GeoJSON khi:

  • Bạn có dữ liệu điểm hoặc các đối tượng không liền kề
  • Cần tối đa hóa khả năng tương thích
  • Bạn cần các tệp đơn giản, dễ đọc
  • Làm việc với các công cụ không hỗ trợ TopoJSON

Công cụ liên quan