在Matlab中找到滞后曲线的区域(图)

时间:2016-03-01 16:05:44

标签: matlab matlab-figure matlab-guide area

我在Matlab中绘制了(fy对uy)的滞后曲线。我想找到情节的区域。我知道trapz命令。但是,在我的情况下,我没有两个特定的曲线方程。我该怎么办呢?

此外,曲线的某些部分位于负区域。如何确保区域不会相互抵消?

uy =
   1.0e-03 *
   [-0.2238
   -0.3616
   -0.4817
   -0.5642
   -0.5962
   -0.5752
   -0.5048
   -0.3945
   -0.2603
   -0.1222
   -0.0020
    0.0807
    0.1129
    0.0918
    0.0213
   -0.0889
   -0.2232
   -0.3615
   -0.4819
   -0.5648
   -0.5972
   -0.5760
   -0.5055
   -0.3952
   -0.2607]



fy =
   -0.0000
   -1.4886
   -2.7506
   -3.5939
   -3.8900
   -3.5939
   -2.7506
   -1.4886
    0.0000
    1.4886
    2.7506
    3.5939
    3.8900
    3.5939
    2.7506
    1.4886
   -0.0000
   -1.4886
   -2.7506
   -3.5939
   -3.8900
   -3.5939
   -2.7506
   -1.4886
    0.0000

1 个答案:

答案 0 :(得分:1)

使用polyarea(X,Y)功能。要检查您是否正在考虑正确的多边形,请使用函数填充(X,Y,颜色)来绘制您正在评估的多边形。

修改
在你的情况下,使用这些函数的问题是你绕曲线走了1.5倍,第二次只是稍微不同的值。解决此问题的方法是在第一轮削减数据。你可以这样做:
1)收集此数据时只做一轮 2)通过对数据进行排序,以便您只需绕过曲线

在您发送到此处的数据的特定情况下,您必须停在第17个值。通过这样做,我获得了正确的多边形 enter image description here