计算图中每个峰下的面积 python
Calculate the area under each peak in a graph in python
我正在尝试计算我用一组 x 和 y 坐标绘制的图表中每个峰下的面积,
我没有 (x,y) 的函数,所以我没能找到合适的方法来做同样的事情。
坐标是
{
[10 10]
[11 1]
[12 7]
[14 4]
[16 8]
[17 5]]}
和y=0
对于所有未标记的x值
每一个梯形都要一一处理。
Area_1 = ( y1 + y2 ) * 1 / 2
示例:(10 + 1 ) * 1 / 2
有点简单正确?
points = [[10, 10],
[11, 1],
[12, 7],
[14, 4],
[16, 8],
[17, 5]]
areas = []
areas.append( points[0][0]/2.0 )
for i in range(0, points[-1][0] - points[0][0]-2):
if ( points[i+1][0] == points[i][0]+1 ):
areas.append( (points[i+1][1] + points[i][1] )/2.0)
elif ( points[i+1][0] >= points[i][0]+2):
areas.append( (points[i][1] )/2.0)
areas.append( (points[i+1][1] )/2.0)
areas.append( points[-1][1]/2.0 )
print(areas)
>[5.0, 5.5, 4.0, 3.5, 2.0, 2.0, 4.0, 6.5, 2.5]
我正在尝试计算我用一组 x 和 y 坐标绘制的图表中每个峰下的面积,
我没有 (x,y) 的函数,所以我没能找到合适的方法来做同样的事情。
坐标是
{
[10 10]
[11 1]
[12 7]
[14 4]
[16 8]
[17 5]]}
和y=0
对于所有未标记的x值
每一个梯形都要一一处理。
Area_1 = ( y1 + y2 ) * 1 / 2
示例:(10 + 1 ) * 1 / 2
有点简单正确?
points = [[10, 10],
[11, 1],
[12, 7],
[14, 4],
[16, 8],
[17, 5]]
areas = []
areas.append( points[0][0]/2.0 )
for i in range(0, points[-1][0] - points[0][0]-2):
if ( points[i+1][0] == points[i][0]+1 ):
areas.append( (points[i+1][1] + points[i][1] )/2.0)
elif ( points[i+1][0] >= points[i][0]+2):
areas.append( (points[i][1] )/2.0)
areas.append( (points[i+1][1] )/2.0)
areas.append( points[-1][1]/2.0 )
print(areas)
>[5.0, 5.5, 4.0, 3.5, 2.0, 2.0, 4.0, 6.5, 2.5]