三条曲线之间的区域

8视图(30天)
Noush
Noush 2021年10月16日
回答: 明星黾 2021年10月16日
大家好,我有一个阴谋和三个曲线。我想找到时对应的区域上方的蓝色和绿色线是红色的。我做不到,在对照组积分,因为红色曲线下面的面积远远大于蓝色和绿色。
我怎么能这样做呢?
7评论
斯科特·麦肯齐
斯科特·麦肯齐 2021年10月16日
嗯,对我来说似乎有点棘手,可行的,但棘手。如果绿色的水平线,说,y = 6 ?你会仅计算的一些绿色区域超过红线。 @Matt J 刚刚发布了一个答案。也许这就是你的解决方案。

登录置评。

答案(2)

马特·J
马特·J 2021年10月16日
编辑:马特·J 2021年10月16日
一个= Einspeiseanteil;
B = GabelstaplerP;
C = max (A, B);
面积= trapz (X, (bxcy)。* (C > = Y))

明星黾
明星黾 2021年10月16日
试试这个,
我创建的比较 “> =” 所以简单地改变这些 “>” 伊藤比较严格 “大于”
x = 25;
蓝色= [0 0 0 8 8 8 0 0 0 8 * 1 (9)0 (8)];
绿色= 1.75 * 1(大小(x));
红色=[0 1 2 1 2 3 2 3 4 5 6 7 8 8 8 14十四17 17 13 13 6 4 2 0 0);
N = 1000;%插值分辨率
ξ= linspace (min (x)马克斯(x), N);%的新“x”
bi = interp1 (x,蓝色,xi);%以内插值替换的“蓝”
胃肠道= interp1 (x,绿色,xi);%以内插值替换的“绿色”
国际扶轮= interp1 (x,红色,xi);%以内插值替换的“红色”
blue_gt_red_idx = bi > =国际扶轮;%“蓝”> = '红色'
green_gt_red_idx = gi > =国际扶轮;%的“绿色”> = '红色'
both_gt_red_idx = (gi > = ri) | (bi > = ri);%都> =“红色”
blue_gt_red_area = cumtrapz (xi, bi。* blue_gt_red_idx);
green_gt_red_area = cumtrapz (xi, gi。* green_gt_red_idx);
both_gt_red_area = blue_gt_red_area + green_gt_red_area;
yyaxis
情节(x,蓝色,“。”,“DisplayName的”,“蓝色美元”)
持有
情节(x,绿色,“g”,“DisplayName的”,“绿色美元”)
情节(x,红色,“。r”,“DisplayName的”,“红色美元”)
持有
ylabel (的功能(。))
yyaxis正确的
情节(xi, blue_gt_red_area“b”,“线宽”,1.5,“DisplayName的”,“蓝色\通用电气红色区域美元”)
持有
情节(xi, green_gt_red_area”:g’,“线宽”,1.5,“DisplayName的”,“绿色\通用电气红色区域美元”)
情节(xi, both_gt_red_area”:k”,“线宽”2,“DisplayName的”,“两个\通用电气红色区域美元”)
持有
网格
ylabel (“积分(:)”)
包含(“x”)
传奇(“位置”,“最佳”,“翻译”,“乳胶”)
最后一个( 结束 的)元素 cumtrapz 向量是总面积。
实验,得到不同的结果。

类别

找到更多的在线情节帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!