d3 geoPath 投影弄乱了地图

d3 geoPath projection is messing up the map

我想将地图的投影更改为对用户来说更平坦
我尝试将投影设置为 d3.geoIdentity() 它有效但不是 "flat enough" 当我尝试更改为 d3.geoAlbers() 时,它会给出错误,并且通过使用其他方法,它要么给我错误的空路径值,要么它正在工作但带有圆形地图 这是重要的代码块,因为包括 json 文件在内的其余代码都很好我想要的是以一种方式设置投影,使地图显示为美国地图

[this is what i would like the projection to be

 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)

[this is what i'm getting]2

投影终于成功了!

所以topojson文件(地图的json文件)实际上是错误的 感谢我在网上找到的 mapstarter 工具,我可以尝试他们提供的一些投影选项,我使用 mapshaper 重塑了 json 文件,现在效果很好