проекция d3 geoPath портит карту - PullRequest
0 голосов
/ 11 апреля 2020

Я хотел бы изменить проекцию карты, чтобы она была более плоской для пользователя.
Я попытался установить проекцию на d3.geoIdentity (), она работала, но она не "достаточно плоская". И когда я пытаюсь изменить для d3.geoAlbers () он выдает ошибки и, используя другие методы, либо выдает ошибки с нулевыми значениями пути, либо работает, но с округлой sh картой - это кусок кода, который важен, так как остальная часть кода, включая json файл все хорошо, что я хотел бы, чтобы установить проекцию таким образом, чтобы карта отображалась как карта США

[ это то, что я хотел бы, чтобы проекция была

 var geojson = topojson.feature(dz, dz.objects.DZA_adm1)
 var projection = d3.geoIdentity()
    .reflectY(true)
    .fitSize([width, height * 2/3],geojson)
const path = d3.geoPath().projection(projection)

[это то, что я получаю] 2

1 Ответ

0 голосов
/ 18 апреля 2020

Проекция наконец работает!

, поэтому файл topo json (json файл карты) был на самом деле неправильным. Благодаря инструменту mapstarter, который я нашел в Интернете, я мог попробовать несколько вариантов проецирования, которые они предоставляют, я изменил файл json используя mapshaper и теперь он работает хорошо

...