2017-09-24 8 views
1

私はパンダを使用していますが、取得したデータセットにはWKT形式の位置欄があります。たとえば:WKTポリゴンの中心を取得する

hospital.get_value(1,'WKT')

POLYGON ((-58.4932 -34.5810,-58.4925 -34.5815,-58.4924 -34.5817)) 

は、より多くのポイントと、この例では、より大きな精度でありますが、私は、例示の目的のためにそれを短縮しました。また、私はそれがWKTか単なる文字列かわかりません。このポリゴンの中心をどのように取得して座標として使用できるのですか?前もって感謝します。

+0

それは正確な中心ではありませんが、あなたはただ一緒経度を平均化し、一緒に緯度を平均場合、それはおそらく、多角形内にあるであろう。それ以外の場合は重心式を適用したいと考えていますが、建築物は地球の曲率に比べて相対的に小さいものの、経度と緯度空間でこのような公式を適用すると誤差が生じる可能性があります。これを避けるには、重心式を適用し、経度と緯度に変換し直します(半径方向成分は無視します)。 – kpie

答えて

0

ポリゴンの線形リングを閉じる必要があることを除いて、ほとんどWKTがあります。

格好の良いは、中心点を取得する.centroid性質を持っています

from shapely import wkt 
g = wkt.loads(
    'POLYGON ((-58.4932 -34.5810,-58.4925 -34.5815,-58.4924 -34.5817,-58.4932 -34.5810))') 
print(g.centroid) # POINT (-58.49270000000001 -34.5814) 
print(g.centroid.coords[0]) # (-58.492700000000006, -34.581399999999995) 
関連する問題