答案1
我真的不知道为什么问题的标题带有“高度递归”,但你可以用标准 TeX 包(如 MetaPost、PSTricks 和 Ti)轻松地绘制它们钾Z.这是一个Ti钾您的图表的 Zy 版本。
\documentclass[tikz,border=3mm]{standalone}
\begin{document}
\begin{tikzpicture}[font=\sffamily,transform shape,line cap=round]
\begin{scope}[scale=2]
\draw[help lines] (-1,-1) grid (7,2);
\draw[thick] (0,-1) -- (0,2) node[below left] {2};
\draw[thick] (-1,0) -- (7,0) foreach \X in {1,...,7}
{ (\X,0) node [below left] {\X}};
\foreach \Y [count=\X starting from 0] in {red,orange,green!60!black,cyan,brown!50!black,magenta}
{\draw[line width=1mm,\Y] (\X,1)
--node[black,above]{$\scriptstyle\mathsf{N}_{\mathsf{\X},\mathsf{1}}(u)$} (\X+1,1);}
\end{scope}
%
\begin{scope}[yshift=-5cm,scale=1.8]
\foreach \Y [count=\X starting from 0] in {brown!50!black,red,orange,green!60!black,cyan}
{\draw[very thick,\Y] (\X,0) -- ++ (1,1) -- ++ (1,-1); }
\draw[dashed,gray] foreach \X in {-1,5}
{(\X,0) -- ++ (1,1) -- ++ (1,-1)};
\draw[thick] (-0.1,0) -- (6.1,0) foreach \X in {0,...,6}
{ (\X,0) node [below] {\X}};
\end{scope}
%
\begin{scope}[yshift=-10cm,scale=1.8,declare
function={gauss(\x)=exp(-\x*\x/0.25);}]
\foreach \Y [count=\X starting from 0] in
{red,brown!50!black,green!60!black,orange,cyan,gray!50}
{\draw[very thick,\Y] plot[variable=\x,domain=-1.2:1.2,smooth]
({0.5+\x+0.5*\X+ifthenelse(\X>2,2.5,0)},{gauss(\x)}); }
\draw[thick] (-1,0) -- (7,0) foreach \X in {0,...,3}
{ ({-0.5+0.5*\X+ifthenelse(\X==3,0.5,0)},0) node [below]
{$\scriptstyle\mathsf{u}_{\mathsf{\X}}$}}
foreach \Y [count=\X starting from 0] in {m,m+k-2,m+k-1,m+k}
{ ({5+0.5*\X-ifthenelse(\X==0,0.5,0)},0) node [anchor=north west,rotate=-45]
{$\scriptstyle\mathsf{u}_{\mathsf{\Y}}$}};
\end{scope}
\end{tikzpicture}
\end{document}