使用 tikz 进行曲线插值

使用 tikz 进行曲线插值

如何通过提供点 1-4 的坐标来创建曲线。

在此处输入图片描述

答案1

这对你有用吗?

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
\draw [gray]  (0,0) -- (1,1) -- (2,0.75) -- (3,2);
\draw [red] plot [smooth, tension=0.6] coordinates { (0,0) (1,1) (2,0.75) (3,2)};
\end{tikzpicture}
\end{document}

tension参数允许您指定平滑样条线的曲率。上述代码的输出应为您提供类似以下内容: 在此处输入图片描述

答案2

您的曲线似乎是由某些关键点的斜率定义的。该hobby库是绘制此类曲线的绝佳工具,例如这里以查看选项。然后,您可以通过 指定 和in angle斜率。out angletangent

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{hobby}
\begin{document}
\begin{tikzpicture}[tangent/.style={%
    in angle={(180+#1)},Hobby finish,
    designated Hobby path=next,out angle=#1},
    pics/vert/.style={code={\draw (0,-0.1) -- (0,0.1) node[above]{#1};}}]
\draw [thick,use Hobby shortcut] 
   ([out angle=45]0,0) pic{vert=1}  .. ([tangent=0]1.5,1) pic{vert=2}
    ..  ([tangent=0]3,-0.25) pic{vert=3} .. ([in angle=225]4.5,1) pic{vert=4};
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容