python - Plotly:使用选项 line_shape ='spline' 时我们绘制什么样的样条?

标签 python r plotly spline

我正在准备一些代码来用样条插入一系列点。

many kinds样条:二次,三次,许多边界条件......

到目前为止,我已经尝试了最流行的:三次样条,边界条件:

  • 自然:二阶导数在第一点和最后点为零。
  • 钳位:一阶导数在第一个点和最后一个点处为零。
  • Not-a-knot:三阶导数在第二个和倒数第二个点是连续的。

  • 我还尝试了具有“夹紧”初始条件的二次样条。

    我发现当我们像这样定义跟踪时,Plotly 也有一个内置的插值函数:
    fig.add_trace(go.Scatter(
        x=df['timestamp'],
        y=df['values'],
        mode='lines',
        line_shape='spline',
    ))
    

    这个 plotly 的样条线看起来很合我的口味。例如,它比自然三次样条更柔软且振荡更小:

    红线是自然三次样条。
    灰线是 plotly 的样条。

    enter image description here

    所以我的问题是:这是什么类型的样条?

    我试图将它与我上面提到的曲线进行比较。它们都不像 Plotly 的样条。

    我检查了 Plotly 的 documentation它不会告诉您他们使用的是哪种曲线。但是它说您可以添加参数“平滑”以控制曲率。

    有谁知道 Plotly 的人是怎么做的?

    最佳答案

    我也无法在文档中找到完整的描述。但从你的身材来看,我认为它是某种 Monotone cubic interpolation .

    如果将您的图形与上述来源中的类似图形进行比较,您会发现图示的样条曲线有很多共同点:

    enter image description here

    从灰色、红色和绿色圆圈突出显示的区域来看,plotly 应用的样条似乎具有与其他类似选项相同的平滑特征。

    关于python - Plotly:使用选项 line_shape ='spline' 时我们绘制什么样的样条?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58605243/

    相关文章:

    python - 任何用于解析 apache 配置文件的 python 库?

    Python将字母转换为两位数

    r - 如何保存 Tidymodels Lightgbm 模型以供重用

    plotly :如何在我的桑基图列上写文本?

    javascript - 如何在 plotly.js 中为箱形图设置固定的分类范围

    python - 访问递归 Python ctypes 结构时出现段错误

    python - 如何让这个运行 'faster'?或者这是正确的术语吗?

    r - 为什么我在计数和过滤后丢失了我的 NA (dplyr)

    r - 识别二进制矩阵中与 1 相邻的所有元素

    javascript - 修复 x-range 在 plotly.js 中不起作用