【发布时间】:2016-11-20 03:49:17
【问题描述】:
我想计算橙色线和蓝色线之间的面积。我设法遮蔽了该区域。但我不知道如何应用trapz 函数来获取该区域。在这篇文章中:Area under surface between two curves 我得到了一些解决方案,但我没有曲线的特定方程,只是曲线本身。
橙色线的代码是:
x_1 = [0,M1_1];
y_1 = [c1,c1];
v = plot(x_1,y_1,'LineWidth',2)
蓝色曲线是长度为 (10000x1)-横坐标和 (1x10000)-纵坐标的数组的图。
如果我使用
%c0_1: Intersection blue curve with y-axis
%c1_1: Intersection orange curve with y-axis
A = trapz(ab1(0:c1_1),ab_y1(c1_1:c0_1))
我收到以下错误:
警告:冒号运算符需要整数操作数作为 index 警告:冒号运算符需要整数操作数 用作索引 Error using trapz(第 58 行) LENGTH(X) 必须等于 Y 的长度,以 2 为单位。
如何轻松地将trapz 函数应用于我的问题?
【问题讨论】:
-
是的,我修改了情节以便更好地理解我的问题。如果我修改旧问题,人们会看到吗?
-
是的,人们可以看到它,因为它会将问题推到主页上活动列表的顶部。请参阅help center 中的this 元帖子和this 页面,其中写道:“编辑帖子也会将问题推到主页顶部。[...]”。请注意,不鼓励两次问同一个问题,而且大多数情况下都不会受到社区的欢迎。
-
感谢@Matt 的提示!对此感到抱歉。在以后的问题中会记住这一点。
-
如果蓝线是 x->0 的渐近线,那么你将得到 area = infinity,除非你也从顶部绑定它。
标签: matlab plot matlab-figure area curve