gpt4 book ai didi

d3.js - 欧洲的 D3 map 投影,如 Albert USA

转载 作者:行者123 更新时间:2023-12-01 10:05:29 25 4
gpt4 key购买 nike

我是 D3.js 的新手,到目前为止,我已经能够在这里和那里搜索所有问题的答案,但我还没有找到任何关于这个问题的答案。

有这张非常漂亮的美国 map 投影,显示阿拉斯加和其他地方移动到 map 底部(albers USA)。

我正在为 nuts 2010 europe 制作几张等值线图(欧洲按较小区域划分的官方方式),我需要做类似的事情,在底部或底部以不同的矩形显示圭亚那和一些岛屿群 map 的右边。有点像这样:http://whs.moodledo.co.uk/file.php/1378/Europe_Quality_of_Life/GDP_Europe_2004.png

另外,我需要展示马耳他的缩放图,这样您才能真正看到它的等值线是什么颜色。

这是我的路径的一个示例,一旦它们被 q3.js 计算,就从 geojson 中提取:

....
<path id="ITI3" class="nut cat2" d="M519.439374985861..."></path>
<path id="ITI4" class="nut cat2" d="M496.3654726267817,575.02..."></path>
<path id="LT00" class="nut cat1" d="..."></path>
<path id="MT00" class="nut cat4" d="Z"></path>
<path id="LV00" class="nut cat1" d="M637.95Z"></path><path id="MT00" class="nut cat3" d="M517.0753838465" fill="#000"></path>
...

我需要移动和调整大小的坚果区域的 id 是

FR91 (south america)
FR92 (south america)
FR93 (south america)
FR94 (somewhere close to madagascar)
MT00 (malta)
PT30
PT20
ES70

你有什么建议?我是否需要在创建时为它们中的每一个创建几个不同的层,是采用 albers USA 投影并相应地修改它还是在创建路径后以某种方式转换它们更好?或者我还没有想到的其他事情?

谢谢,

最佳答案

我不会弄乱实际的形状文件,只是创建一个新的投影。 Albert USA 的实现并不太棘手:

function albersUsa(location) {
var longitude = location[0],
latitude = location[1];
return (latitude > 50 ? alaska
: longitude < -140 ? hawaii
: latitude < 21 ? puertoRico
: lower48)(coordinates);
}

https://github.com/mbostock/d3/wiki/Geo-Projections#wiki-albersUsa

您应该能够为欧洲创建版本。

关于d3.js - 欧洲的 D3 map 投影,如 Albert USA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16735546/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com