【发布时间】:2017-08-15 12:29:52
【问题描述】:
我今天的问题是关于 D3 并使用 Canvas 在地球上以长/纬显示文本。我基本上得到的是一个使用 mbostock 的世界巡演构建的地球仪,它有一个长/纬度列表,并旋转地球仪以专注于它们。我已经在这些点上有了标记,但我想要在所有点旁边显示一些文本。在这个时间点,它只是城市名称,但目的是随着地球更加充实而显示更多信息。我用代码创建了一个 plunk:https://plnkr.co/edit/CzfoF4bkPv93l3Yxwu3N?p=preview
那个plunk中的相关代码是:
return function(t) {
projection.rotate(r(t));
c.clearRect(0, 0, width, height);
c.fillStyle = "#ccc", c.beginPath(), path(land), c.fill();
for (var j = 0; j < points.length; j++) {
c.fillStyle = "#000", c.beginPath(), path(points[j]), c.fill();
}
c.strokeStyle = "#000", c.lineWidth = 2, c.beginPath(), path(globe), c.stroke();
};
基本上,我要求的是一种使用画布在地球上的特定长/纬度坐标稍微右侧显示文本的方法。非常感谢任何和所有帮助。提前谢谢!
【问题讨论】:
标签: javascript d3.js canvas