【发布时间】:2025-12-05 04:05:01
【问题描述】:
我从一个示例地图应用开始:http://bl.ocks.org/d3noob/raw/5193723/
我想放置一个自定义饼图,如下图所示。我在圈子创建完成后添加了代码 sn-p 来创建一个。
饼图片段:
var r=10;
var p = Math.PI*2;
var arc = d3.svg.arc()
.innerRadius(r-3)
.outerRadius(r)
.startAngle(0)
.endAngle(p* d.value1);
var arc2 = d3.svg.arc()
.innerRadius(r-7)
.outerRadius(r-4)
.startAngle(0)
.endAngle(p* d.value2);
g.append("path")
.attr("d", arc)
.attr("fill", "red")
.attr("transform", "translate(400,500)");
g.append("path")
.attr("d", arc2)
.attr("fill", "orange")
.attr("transform", "translate(400,500)");
效果很好,如下图所示:
问题
- 当我缩放或移动地图时,饼图消失但圆圈保持不变。有人可以帮我理解吗?
- 人们可以注意到弧线的绘制方式非常粗糙。预计将为每个城市绘制饼图。我正在寻找一种更简洁的方式,就像绘制圆圈的方式一样。
【问题讨论】:
标签: javascript d3.js topojson