如何运用MATLAB求曲线某点纵坐标对应的横坐标?

如标题。... 如标题。 展开
 我来答
H茅derv谩ry
2019-11-14 · TA获得超过3466个赞
知道答主
回答量:166
采纳率:50%
帮助的人:5.8万
展开全部

1、在图形界面窗口中,工具栏上的【Data Cursor】工具,然后再在需要查看坐标值的数据点上单击左键即可。

2、也可以选择【tools】菜单栏下面的【Data Cursor】选项,具体情况如图:

3、最终效果如下图:

ischinaboy
推荐于2017-10-03 · TA获得超过143个赞
知道答主
回答量:109
采纳率:0%
帮助的人:74.5万
展开全部

在MATLAB中,已知曲线某点横坐标x0来求纵坐标y0的问题,可以通过插值函数interp1()来很好地解决。但是反过来如何解决呢?我想到了下面的办法来最大程度地得到横坐标的精确值x0。

      1、首先通过MATLAB曲线图观察出纵坐标y0与曲线s=s(x,y)的交点p,判断出交点p在横坐标轴上的范围[a,b];

      2、通过在区间[a,b]上灵活应用插值函数interp1,可以得到包含纵坐标y0在内的一系列值;

      3、通过函数find(y>y0,1,'first')求得第一个比y0大的y的索引,通过find(y<y0,1,'last')求得第一个比y0小的y的索引;

      4、通过以上索引可相应求得横坐标上的值a0和b0,而精确值x0便位于a0和b0之间;

      5、可以取x0= mean([a0,b0]),便可求得纵坐标所对应的横坐标,而且精度随插值步长的减小而提高。

以上方法简单实用,通过使用该法,很容易地解决了前面所提出的问题,效果可用一张图表示如下:

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
泪之梦幻
推荐于2017-09-03 · TA获得超过2211个赞
知道小有建树答主
回答量:304
采纳率:100%
帮助的人:56.9万
展开全部
在matlab中有一个interp1()函数,可以帮助解决问题,具体情况如下:
MATLAB中的插值函数为interp1,其调用格式为: yi= interp1(x,y,xi,'method')

其中x,y为插值点,yi为在被插值点xi处的插值结果;x,y为向量, 'method'表示采用的插值方法,MATLAB提供的插值方法有几种: 'method'是最邻近插值, 'linear'线性插值; 'spline'三次样条插值; 'cubic'立方插值.缺省时表示线性插值
注意:所有的插值方法都要求x是单调的,并且xi不能够超过x的范围。
例如:在一天24小时内,从零点开始每间隔2小时测得的环境温度数据分别为
12,9,9,1,0,18 ,24,28,27,25,20,18,15,13,
推测中午12点(即13点)时的温度.
x=0:2:24;
y=[12 9 9 10 18 24 28 27 25 20 18 15 13];
a=13;
y1=interp1(x,y,a,'spline')
结果为: 27.8725
若要得到一天24小时的温度曲线,则:
xi=0:1/3600:24;
yi=interp1(x,y,xi, 'spline');
plot(x,y,'o' ,xi,yi)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式