Площадь внутри замкнутого контура в питоне - PullRequest
0 голосов
/ 05 ноября 2018

Учитывая участок в matplotlib, как найти область, покрытую ими (интегрированная область)?

enter image description here

Ответы [ 2 ]

0 голосов
/ 05 ноября 2018

Если у вас есть x, y баллов, я предполагаю, что вы работаете над дискретной функцией, а не над непрерывной функцией. Если вы уверены, что по оси x будет только 2 точки, вы можете суммировать разницу по оси y.

import numpy as np 

point_list = np.array([(1, 3), [1, 5], (2, 3), (2 ,10)])
_sum = 0
for point in point_list:
    indexes = np.where([points[0] for points in point_list] == point[0])[0]
    _sum += abs(point_list[indexes[0]][1] - point_list[indexes[1]][1]) / 2
print(_sum)
0 голосов
/ 05 ноября 2018

использование стройный

вот краткое изложение в другом QA

>>> from shapely.geometry import Point
>>> a = Point(1, 1).buffer(1.5)
>>> b = Point(2, 1).buffer(1.5)
>>> c = a.intersection(b)
>>> c.area
4.11619859013966
...