2015-05-05 3 views
0

Я следую this руководство по созданию визуализации карты Венеции (Италия). Есть ли способ генерировать такую ​​геометрию? Мне нужен файл GeoJson, представляющий линии острова (что-то вроде this).Создание пользовательской геометрии географической карты

Я смотрел Natural Earth, но я не понимаю, как экспортировать GeoJson из Венеции (или любой другой пользовательской области).

EDIT:

После ответа на Stefanski, я генерировать JSON, а затем преобразовать его в topojson с помощью следующей команды:

topojson \ 
    -o venice.topojson \ 
    venice.json \ 

Затем я скопировать HTML-код из руководства:

<!DOCTYPE html> 
<meta charset="utf-8"> 
<style> 

/* CSS goes here. */ 

</style> 
<body> 
<script src="http://d3js.org/d3.v3.min.js"></script> 
<script src="http://d3js.org/topojson.v1.min.js"></script> 
<script> 

var width = 960, 
    height = 1160; 

var projection = d3.geo.albers() 
    .center([0, 55.4]) 
    .rotate([4.4, 0]) 
    .parallels([50, 60]) 
    .scale(1200 * 5) 
    .translate([width/2, height/2]); 

var path = d3.geo.path() 
    .projection(projection); 

var svg = d3.select("body").append("svg") 
    .attr("width", width) 
    .attr("height", height); 

d3.json("venice.topojson", function(error, ve) { 
    svg.append("path") 
     .datum(topojson.feature(ve, ve.objects.venice)) 
     .attr("d", path); 
}); 

</script> 

Этот код не содержит ошибок javascript, но он не показывает Ve nice map, тогда как он работает с uk one.

ответ

1

Думаю, вы можете использовать данные от Natural Earth, используя «Штаты и провинции». Оттуда, используйте ogr2ogr фильтровать данные в формате GeoJSON:

ogr2ogr \ 
-f GeoJSON \ 
-where "NAME = 'Venezia'" \ 
venice.json \ 
ne_10m_admin_1_states_provinces.shp 

Как я добрый, я на самом деле сделал это для you. Затем вы можете использовать этот файл как тот, который используется для Великобритании, и строить свою карту.

Смежные вопросы