2012-03-03 60 views
31

Tôi đang làm việc trên một dự án nơi cần hiển thị bản đồ của các quốc gia và thành phố bằng cách sử dụng d3.js.GeoJson Cơ sở dữ liệu thế giới

Thực ra, D3 hỗ trợ định dạng GeoJson. Thông thường, tôi đoán, định dạng GeoJson được chuyển đổi từ một số định dạng khác.

tôi thấy một số nơi với dữ liệu GeoJSON này:

http://mbostock.github.com/protovis/ex/countries.js

Nhưng, đây chỉ là một danh sách các nước, tôi đang tìm kiếm một số dịch vụ hoặc chương trình mang lại cho tôi khả năng thiết lập một ID, có được định dạng này, và chuyển đổi nó thành GeoJson, hoặc có được nó trong GeoJson tốt hơn.

Cảm ơn !!

Trả lời

69

Điều này có cần phải là dịch vụ không? Đây là cách tôi đã tiếp cận này trong quá khứ, sử dụng miễn phí/công cụ mã nguồn mở:

  • Tải công miền tệp hình từ Natural Earth Data

  • Sử dụng Quantum GIS để chuyển đổi .shp để .geojson (một bước , trong "Lớp> Lưu dưới dạng ...")

Bây giờ bạn có dữ liệu GeoJSON hi-res. Here, have some countries.

Đây thực sự là một tệp lớn nên bạn sẽ muốn chia nhỏ tệp đó. Nhưng bạn không cần một dịch vụ cho điều này, chỉ các tệp tĩnh cho mỗi quốc gia, được đặt tên theo ID. Điều này sẽ đủ dễ dàng để sản xuất với một kịch bản trong tiện ích bạn chọn (Python, Ruby, node.js).

+0

Cảm ơn! Đó là những gì tôi đang tìm kiếm! – todotresde

+5

Đối với những người cần câu trả lời phức tạp hơn: 1. Tải xuống bản đồ từ Dữ liệu Trái đất Tự nhiên. 2. Giải nén và tìm tệp Shape. 3.Kéo tệp hình dạng vào QGIS. 4. "Layer> Save As" như trên. – daCoda

+0

nhanh hơn: chuyển đổi trực tuyến tại https://mygeodata.cloud/converter/shp-to-geojson – cyrianox

13

Lưu ý rằng, thông qua GDAL library, bạn cũng có thể sử dụng dòng lệnh ogr2ogr để chuyển đổi shapefiles. Ví dụ:

$ ogr2ogr -f geojson source_file.shp dst_file.json 

sẽ chuyển đổi source_file.shp vào GeoJSON định dạng dst_file.json.

đọc thêm ở đây:

Convert a shapefile (.shp) to xml/json

2

Hãy xem https://github.com/mledoze/countries

Nó có geoJSONs cho mỗi quốc gia. (độ phân giải trung bình mà tôi có thể nói)

countries.json chứa từng mô tả quốc gia bao gồm tên quốc gia, tọa độ (tại đó bạn có thể hiển thị nhãn) và tên thủ đô.

Các vấn đề liên quan