Mam gdal 1.10.1 i topojson 1.4.0 zainstalowane na moim MacO 10.7.5. Pobrałem formularz ne_110m_ocean Natural Earth.Jak przekonwertować plik kształtu oceanu na topojson
pomyślnie przekształcił shapefile w GeoJSON:
ogr2ogr \
-f GeoJSON \
ocean.json \
ne_110m_ocean.shp
Potem przekształcił GeoJSON do topojson:
topojson \
-o ocean_tj.json \
ocean=ocean.json \
Kiedy wykreślić używając pliku GeoJSON wszystko działa poprawnie.
d3.json("ocean.json", function(json) {
svg.selectAll("path")
.data(json.features)
.enter()
.append("path")
.attr("d", path)
.style("fill", "steelblue");
});
Kiedy wykreślić przy użyciu pliku topojson, zamiast wielokątów oceanów dostaję wielokątów ziem !!!!
d3.json("ocean_tj.json", function(topology) {
var ocean = topojson.feature(topology, topology.objects.ocean);
svg.append("path")
.datum(ocean)
.attr("d", path)
.style("fill", "red");
});
Czy ktoś może pomóc?
góry dzięki
ja również uzyskać dziwne rezultaty podczas pracy z tego pliku. Zasadniczo miałem pasek w środku danych, gdzie ocean i ląd zostały odwrócone. Użyłem [ShapeEscape] (http://www.shpescape.com/mix/). Opublikuję coś w Grupach dyskusyjnych Google i zobaczę, czy ktoś tam ma jakieś pomysły. – user1614080
Nadal nie jestem pewien, dlaczego tak się dzieje, ale używając 'no-force-clockwise' napraw problem. Zbadam trochę więcej i wypełnię raport o błędzie, jeśli będzie to konieczne. –