我是D3的新手,这是我对stackoverflow的第一个问题。
我想在这个包含过渡的示例中更改水的颜色: http://bl.ocks.org/mbostock/4183330
我可以更改此示例中的颜色,这是静态的:http://bl.ocks.org/mbostock/3757125
我找到了这个帖子:How can I color ocean with topojson in d3 when I have coordinate info for land?然而,这也改变了地球之外的区域。
代码的这一部分似乎是样式,但我无法确定添加什么来改变水色。
c.fillStyle = "#bbb", c.beginPath(), path(land), c.fill();
c.fillStyle = "#f00", c.beginPath(), path(countries[i]), c.fill();
c.strokeStyle = "#fff", c.lineWidth = .5, c.beginPath(), path(borders), c.stroke();
c.strokeStyle = "#000", c.lineWidth = 2, c.beginPath(), path(globe), c.stroke();
另外,看到下面的代码行,我在网上搜索了可能表示水的可能的topojson特征和/或对象的参考列表,也许我可以弄清楚如何设计样式,但无法找到之一:
land = topojson.feature(world, world.objects.land),
我想知道这是否与画布有关(我不太了解)。
希望我能忽略一些明显的和noob一样的东西。
非常感谢!
答案 0 :(得分:1)
哈!当然:
修改此行:
c.strokeStyle = "#ccc", c.lineWidth = .5 * ratio, c.beginPath(), path(globe), c.stroke();
对此:
c.fillStyle = "#000", c.beginPath(), path(globe), c.fill();
我觉得很傻,但我想有时需要全力以赴才能让脑细胞点击。谢谢!