【问题标题】:Octave smooth curve graph八度平滑曲线图
【发布时间】:2013-09-02 07:31:45
【问题描述】:

我想在我的数据上在 Octave 中绘制平滑曲线拟合图,而不是像 Excel 中的平滑线散点图那样的锐线。

我的数据如下:

x = [1, 2 , 3];
y = [53, 48, 31];
y1 = [89, 51, 49];

当我做一个正常的绘图时,它会给出一个点上有锐利边缘的线性图。我想要平滑的图形。我怎样才能在 Octave 中绘制它。谢谢

【问题讨论】:

    标签: matlab plot octave


    【解决方案1】:

    好吧,您只有 3 个数据点,所以您的图表当然不会“平滑”。获取(更多)更多数据点,您将获得“平滑”图表,前提是您的数据“平滑”。

    您还可以为您的数据拟合一条“平滑”曲线,但这完全是一个不同的问题,而且您还需要更多数据点才能进行有意义的拟合。

    【讨论】:

      【解决方案2】:

      很旧,但可能仍然有用。例如

      x = [1, 2 , 3];
      y = [53, 48, 31];
      y1 = [89, 51, 49];
      xspline = linspace(min(x),max(x),100);
      yspline = interp1(x,y,xspline,"pchip");
      yspline1 = interp1(x,y1,xspline,"pchip");
      plot(xspline,yspline,xspline,yspline1);
      

      你可以通过输入找到不同的插值“平滑”方法

      help interp1
      

      在上面的例子中

      "pchip"
            Piecewise cubic Hermite interpolating
            polynomial--shape-preserving interpolation with smooth first
            derivative.
      

      已使用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-02-07
        • 2012-02-07
        • 2021-11-28
        • 1970-01-01
        • 2014-10-15
        • 1970-01-01
        • 2023-03-09
        相关资源
        最近更新 更多