Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用D3.js在美国地图中定义区域_Javascript_D3.js_Geojson - Fatal编程技术网

Javascript 使用D3.js在美国地图中定义区域

Javascript 使用D3.js在美国地图中定义区域,javascript,d3.js,geojson,Javascript,D3.js,Geojson,我正在展示一幅非常基本的美国地图;只有美国。我要寻找的是一种将地图划分为区域的好方法,只需一次悬停(区域中的所有状态都会改变颜色)并单击listener 到目前为止,最好的选择是: 这似乎比它应该做的工作多得多。除了导入50个不同的形状文件并手动将其编辑到区域中之外,还有人对更好的方法有什么建议吗?此演示接近您想要的: 您要做的是操作us.json文件;顺便说一句,我看不到州名,但我看到了ID,通过将地区中的州合并为一个ID来创建地区。 尝试应用您自己的onclick/hover,如果无法

我正在展示一幅非常基本的美国地图;只有美国。我要寻找的是一种将地图划分为区域的好方法,只需一次悬停(区域中的所有状态都会改变颜色)并单击listener

到目前为止,最好的选择是:


这似乎比它应该做的工作多得多。除了导入50个不同的形状文件并手动将其编辑到区域中之外,还有人对更好的方法有什么建议吗?

此演示接近您想要的:



您要做的是操作us.json文件;顺便说一句,我看不到州名,但我看到了ID,通过将地区中的州合并为一个ID来创建地区。
尝试应用您自己的onclick/hover,如果无法获得,请分享您的尝试,我们将从那里开始。

您的地图是如何设置的?如果每个州都是一个SVG,您可以根据其所在地区为每个州分配一个类。他会带你走过整个过程。。。获取数据,使用topojson的命令行工具,在d3中加载数据,设置区域样式,添加标签,等等。我在看“让我们制作一个地图”示例,它并不完全符合我的要求。我没有找到任何关于如何做到这一点的好信息。我需要将多个功能(状态)合并到单个功能(区域)。因此,当我在D3中绘制地图时,它将每个区域作为一个整体绘制,而不是单个州。假设这已成为一个geojson问题,而不是D3问题。