💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
#### 1、问题描述 地图上有数据的区域需要给该区域添加图表(如柱状图、饼图)来显示数据,但后端没有返回区域经纬度,无法定位。 #### 2、问题原因 图表定位必须需要一个坐标点,按照以往的经验是通过后端返回一个经纬度字段,再用d3的projection方法计算出该区域坐标,但这次后端又无法提供经纬度字段。 #### 3、解决方案 方案1: 通过后端返回的areaId去匹配本地json已有的经纬度 方案2(推荐):使用D3提供的path.centroid()方法计算出该区域的中心点 ```javascript group.append('path') .attr({ stroke: '#a7dbff', 'stroke-width': 1, fill: '#0892ef', d: path, class: function(d, i){ //保存每个path中心点的值 if(secondMap){ coordinate2.push(path.centroid(d)) }else{ coordinate1.push(path.centroid(d)) } return 'path' + i + ' ' + gClass[1] } }) ````