[英]Calculate area of polygon in d3
我無法使用函數path.area()
計算D3中多邊形的面積
我試過給它一個坐標列表如下:
var d = [
[-1, 415.44],
[146.93, 304.47],
[195.45, 152.13],
[-1, 134.64]
]
path.area(d)
我也嘗試過它(我認為是)一個TopoJSON對象,如下所示:
path.area({
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": d},
});
第一次嘗試給你的值為0
。 第二個給你'NaN'
。 你們知道我做錯了嗎? 作為一個FYI,我需要計算我引用的多邊形的面積,如下所示:
d3.select("#IDofpolygon");
你必須使用d3.polygonArea ,它:
返回指定多邊形的帶符號區域。 如果多邊形的頂點是逆時針順序(假設原點⟨0,0⟩在左上角的坐標系),則返回的區域為正; 否則為負,或為零。
這是演示:
var d = [ [-1, 415.44], [146.93, 304.47], [195.45, 152.13], [-1, 134.64] ]; var area = d3.polygonArea(d); console.log(area)
<script src="https://d3js.org/d3.v4.min.js"></script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.