angela214 发表于 2007-10-6 17:39

对一组数据在对数坐标下描点和积分的问题

我有这样一组数据
          x            y10.0211.080.0421.60.0920.032.10.242.60.33.70.1054.20.0450.0860.02170.01190.006100.005120.013130.012150.02200.008220.005300.007400.009500.006600.0045700.004800.004900.0031000.003
我想把这组数据在对数坐标下描出点以后用一条光滑的曲线连接各点
然后求这个曲线的积分

有谁可以帮我解决吗
谢谢了

[ 本帖最后由 eight 于 2007-10-6 17:47 编辑 ]

appleseed05 发表于 2007-10-6 17:49

loglog(x,y)

appleseed05 发表于 2007-10-6 17:54

积分的话 论坛上有很多帖子的 你搜索一下

在matlab里
doc int
doc inline

eight 发表于 2007-10-6 17:54

原帖由 angela214 于 2007-10-6 17:39 发表 http://www.chinavib.com/forum/images/common/back.gif
我有这样一组数据
          x            y10.0211.080.0421.60.0920.032.10.242.60.33.70.1054.20.0450.0860.02170.01190.006100.005120.013130.012150.02200.008220.005300.007400.009500.006600.0045700.0 ...

建议搜索一下版面,对数坐标的问题有很多讨论。至于积分问题,按照离散点的积分定义,个人认为是求曲线与x轴围成的面积,对此,请 help polyarea 看看相关帮助,然后注意横纵坐标的单位问题。当然,也可以搜索一下版面看看求积分的帖子,看有否收获

eight 发表于 2007-10-6 17:56

原帖由 appleseed05 于 2007-10-6 17:54 发表 http://www.chinavib.com/forum/images/common/back.gif
积分的话 论坛上有很多帖子的 你搜索一下

在matlab里
doc int
doc inline

这两个函数都需要表达式吧?如果只有离散数据,没有表达式,是否管用?

appleseed05 发表于 2007-10-6 18:29

离散的话应该不管用吧

对离散的数据还是应该像eight你说的求面积算

花如月 发表于 2007-10-6 18:53

我对离散数据做过测试,按照数值积分的定义做不过没有系统自带的积分函数精度好。另外数值积分似乎也需要表达式,没有表达式并且如果要求精度不高可以自己按照定义做。polyarea这个函数还是第一看到,以前没有用过,感谢分享:victory:

[ 本帖最后由 花如月 于 2007-10-6 18:54 编辑 ]

angela214 发表于 2007-10-8 16:57

polyarea是实现什么功能的命令

如题
我有一个这样的曲线



我想求它曲线以及和X轴Y轴相交部分的面积
我该用什么命令
是不是polyarea(x,y)??

花如月 发表于 2007-10-8 17:28

如果图是根据离散的数据点绘制的,那么polyarea应该可以计算的。自己先看一下帮助文档吧

eight 发表于 2007-10-8 19:56

原帖由 angela214 于 2007-10-8 16:57 发表 http://www.chinavib.com/forum/images/common/back.gif
我想求它曲线以及和X轴Y轴相交部分的面积
我该用什么命令
是不是polyarea(x,y)??

自己摸索一下就可以了,不要遇到问题就只懂得提问,这样太依赖别人了,而且自己动手的话能够学到更多东西。这个问题其实简单 doc polyarea 就知道如何做了,下面是例子:
x = ;
y= ;
X = ;
Y = ;
d = polyarea(X,Y)

angela214 发表于 2007-10-9 09:08

我摸索过很多遍了
就是因为结果和实际的不符才来问的
我把后面的点坐标改小后面积反而更大
所以我来问下这个命令是不是求曲线以及XY轴之间的面积
如果是
那么我把纵坐标改小以后面积应该变小才对

eight 发表于 2007-10-9 09:33

原帖由 angela214 于 2007-10-9 09:08 发表 http://www.chinavib.com/forum/images/common/back.gif
我摸索过很多遍了
就是因为结果和实际的不符才来问的
我把后面的点坐标改小后面积反而更大
所以我来问下这个命令是不是求曲线以及XY轴之间的面积
如果是
那么我把纵坐标改小以后面积应该变小才对

这个命令是求多边形的面积,只要是封闭的多边形,都可以求。由于在实际描点中,我们只能得到有限的离散数据,因此,在“求由这些离散数据组成的曲线的积分”时,由于等价于求曲线以下部分的面积,因此可以采取“求多边形面积”的方法。

结合上述的文字、 doc polyarea 后的图形,还有我给出的代码例子一起来理解吧

[ 本帖最后由 eight 于 2007-10-9 09:37 编辑 ]

angela214 发表于 2007-10-9 09:42

我想问下代码例子中的
X = ;
Y = ;
是什么意思
是限制求面积得区间吗
但是x(1)和Y中得最后一个0是什么意思呢

eight 发表于 2007-10-9 09:52


是限制求面积得区间吗
是,多边形当然是封闭的,不然如何求面积

但是x(1)和Y中得最后一个0是什么意思呢
起点与终点重合才能做成“封闭”,我上面写得不够准确(因为我的数据x、y刚好从(x(1),0)开始),比较恰当的写法是:
X = ;
Y = ;(x(end), 0)、(x(1), 0)是 x 轴上的点,添加这两个点是求曲线以下面积所必需的,最后那个点(x(1), y(1))是曲线起点,你画图理解一下吧

[ 本帖最后由 eight 于 2007-10-9 09:55 编辑 ]

angela214 发表于 2007-10-9 10:18

终于明白了
谢谢
页: [1] 2
查看完整版本: 对一组数据在对数坐标下描点和积分的问题