24小时热门版块排行榜    

查看: 14007  |  回复: 11

脱皮的洋葱

木虫 (小有名气)

[求助] Matlab 已知 函数y值 求对应自变量x值

大家好

遇到一个matlab已知y求相应的x值的问题  需要请教各位高手。。
x,y 为 2 组向量 plot 图形如下:

x 为很坐标 y 为纵坐标

求 y = 0.8 时 对应的 x 值 find 函数求得空矩阵 因为 y = 0.8 不在 y 向量里。想是不是可以用 polyfit 和 polyval 函数, 不过这样的话貌似需要分段拟合。我想请问一下 还有没别的可能来求相应的 x 值呢。 谢谢啦
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Nonebull

木虫 (正式写手)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
脱皮的洋葱: 金币+2, 有帮助 2013-01-11 01:54:07
xiegangmai: 金币+1, 谢谢参与 2013-01-13 23:45:40
楼主,看样子你y数据点也不少,可以找距离0.8最近的x值试一下,不用去fit了,太麻烦
2楼2013-01-10 01:21:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

脱皮的洋葱

木虫 (小有名气)

引用回帖:
2楼: Originally posted by Nonebull at 2013-01-10 01:21:33
楼主,看样子你y数据点也不少,可以找距离0.8最近的x值试一下,不用去fit了,太麻烦

嗯。。。确实。。。我大概比较了一下 其实误差也不是很大 对这个函数确实没有必要在专门去 fit。。。  我就是想如果没有这么多点。。。如果误差又很大的话。。。是不是只有fit这个方法了呢
3楼2013-01-10 23:11:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

轩辕世纪

金虫 (正式写手)

【答案】应助回帖


感谢参与,应助指数 +1
脱皮的洋葱: 金币+1, 有帮助 2013-01-11 16:17:28
楼主,可以插值一下,然后find就可以了。。。
为天地立心,为生民立命,为往圣继绝学,为万世开太平
4楼2013-01-11 13:25:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

blesswj

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +1
脱皮的洋葱: 金币+2 2013-01-11 16:17:34
xiegangmai: 金币+2, 谢谢参与 2013-01-11 22:55:08
用样条插值就可以做到!matlab中命令interp1,例如:
x=[1 2 3 4 5 6 7 8 9 0];
y=0.2*x;
a=1.5;%求1.5处y的函数值
b=interp1(x,y,a,'spline');
%b就是x=1.5时y的值,其中spline表示样条插值,还有其余四五种插值方式吧!
多累的时间,想想未来,忍一忍,走下去......
5楼2013-01-11 13:45:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

脱皮的洋葱

木虫 (小有名气)

引用回帖:
5楼: Originally posted by blesswj at 2013-01-11 13:45:59
用样条插值就可以做到!matlab中命令interp1,例如:
x=;
y=0.2*x;
a=1.5;%求1.5处y的函数值
b=interp1(x,y,a,'spline');
%b就是x=1.5时y的值,其中spline表示样条插值,还有其余四五种插值方式吧!...

哈哈 interp1 是可以 但是是给定x值 求y值。。。 如果用interp1 的话 对这个函数 需要分段求逆函数先 也是个不错的选择。。谢谢啦
6楼2013-01-11 16:14:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

脱皮的洋葱

木虫 (小有名气)

引用回帖:
4楼: Originally posted by 轩辕世纪 at 2013-01-11 13:25:56
楼主,可以插值一下,然后find就可以了。。。

就是 可能要很密集的插值 才能有对应 y值 刚好是0.8   如果要求 y = 0.8111 处值的话 插值再find貌似有些麻烦。。。 不过还是很谢谢你
7楼2013-01-11 16:17:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

blesswj

金虫 (小有名气)


xiegangmai: 金币+1, 谢谢参与 2013-01-11 22:55:16
哎,楼主有点死板啊,你需要哪个数据点就带入在那个数据点,如果需要插值很多就做个矩阵带入到interp1中,都可以的。
也许我没有明白你意思,呵呵,希望你对有帮助哦!
多累的时间,想想未来,忍一忍,走下去......
8楼2013-01-11 16:33:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

脱皮的洋葱

木虫 (小有名气)

引用回帖:
8楼: Originally posted by blesswj at 2013-01-11 16:33:25
哎,楼主有点死板啊,你需要哪个数据点就带入在那个数据点,如果需要插值很多就做个矩阵带入到interp1中,都可以的。
也许我没有明白你意思,呵呵,希望你对有帮助哦!

哈哈。。。 interp1 是插入 x 值 得出 y 值吧?  我是需要求 y 值所对应的 x值哈。。。 所以我说用 interp1 的话 我需要先分段 然后 x y 互换。。。也许我弄错了? interp1 也可以直接给 y 值 然后得出 x 值?我看看 help 文件先。。。
9楼2013-01-11 20:53:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wjm9448

新虫 (初入文坛)

我也遇到这样的问题,求助
10楼2014-09-17 16:06:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 脱皮的洋葱 的主题更新
信息提示
请填处理意见