【问题标题】:Matlab interp1 curve doesn't follow dataMatlab interp1曲线不跟随数据
【发布时间】:2015-09-23 12:47:09
【问题描述】:

我一直在使用 interp1 绘制曲线以跟随数据点集,并且对于大多数数据点,它一直在工作:

但是当我尝试使用另一组数据点时,它根本不遵循它们:

对于这两种插值,我使用的代码只是:

curve = interp1(x, y, 'pchip');

其中 x 只是一组数字,对应于每个数据点的 x 轴,y 是值本身。

我不知道导致 interp1 函数不跟随数据的第二个数据集有什么不同。

【问题讨论】:

  • 好吧,我们当然无法判断,因为您没有发布任何有关数据的信息。
  • 重现问题的邮政编码!
  • 但是,interp1 的第三个参数不应该是您的 xq 值,即您想要插值的 x 轴点...
  • @Hoki 你的意思是1:size(x,1)?否则它只会产生一个点......而且我认为如果你把它省略但指定一个方法那么你(unintuitavely)使用这种形式vq = interp1(v,xq,method)这意味着OP有x和@ 987654332@已切换
  • 无法复制:codeplot output

标签: matlab plot interpolation


【解决方案1】:

感谢@m.s。为了提供他的代码,事实证明问题在于我用 x= -90:10:90 插值第二个图,而如果我用 1:19 插值,以与第一个图类似的方式,那么问题是固定的。

【讨论】:

    猜你喜欢
    • 2015-05-27
    • 1970-01-01
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    • 2011-07-11
    • 1970-01-01
    • 2011-05-27
    • 2015-03-22
    相关资源
    最近更新 更多