填充两个 \draw Tikz 之间的区域

填充两个 \draw Tikz 之间的区域

对于习惯的人来说,这可能是一个简单的方法。我想用图案(例如条纹)填充两个函数之间的区域。请参阅下面的代码。我看到了类似这样的 [domain]-option,但不知道该方案是如何工作的,也许我完全错了 :D

工作:

填充红色和黑色函数之间的差异

到目前为止感谢

\def\dtwData{graphics/data/dtwSimple.txt}
\begin{tikzpicture}
%Points
\coordinate (x-start) at (0cm, 2cm);
\coordinate (x-end) at (15cm, 2cm);
\begin{scope}[thick]
    \draw[] (0,0) -- (0,6); 
    \draw[] (x-start) -- (x-end);
\end{scope}
\draw[color=red, thick] (0, 1) -- (14, 6);
\draw[color=blue, dashed] (0, 1.75) -- (14, 6.75);
\draw[color=blue, dashed] (0, 0.25) -- (14, 5.25);
%plot
\draw[thick] plot[smooth] file {\dtwData};
\end{tikzpicture}

在此处输入图片描述

答案1

您需要重新创建相同的路径,即复制两个命令的代码\draw,然后使用带有选项的结果路径\fill。使用\fill (0,1) -- (14,6) (0,0) plot[smooth] file {\dtwData}可能会成功。还有一些选项可以让您更改填充与自身相交的路径的规则。有关详细信息,请参阅 PGF 手册。

答案2

以下是我的最终设计图,仅供参考

\def\dtwData{graphics/data/dtwSimple.txt}
\begin{tikzpicture}[scale=0.8]
    \coordinate (x-start) at (0cm, 2cm);
    \coordinate (x-end) at (15cm, 2cm);
    \begin{scope}[]
    \draw[-latex'] (0,0) -- (0,6);  
    \draw[-latex'] (x-start) -- (x-end);
    \draw (13.75,1.7) node[right] {\footnotesize $Zeit$};
    \draw (0,5.75) node[left] {\footnotesize $Wert$};
    \end{scope}
    \fill [color=gray!20, opacity=0.01] (0,0.25) -- (0, 1.75) -- (14, 6.75) -- (14, 5.25) ;
    \draw[color=gray, opacity=0.5] (0, 1.75) -- (14, 6.75);
    \draw[color=gray, opacity=0.5] (0, 0.25) -- (14, 5.25);
    %plot
    \draw[thick] plot[smooth] file {\dtwData};
    \fill[color = gray!60, opacity=0.1] (0,1) -- (14,6) (0,0) plot[smooth] file {\dtwData};
    \fill[pattern color = gray, pattern = north east lines, opacity=0.8] (0,1) -- (14,6) (0,0) plot[smooth] file {\dtwData};
    \draw[color=gray, thick] (0, 1) -- (14, 6);
    \draw[latex'-latex'] (14.15, 5.25) -- (14.15, 6.75);
    \draw (14.2, 6) node[right] {\footnotesize $Grenzen$};
    \draw[-latex'] (4, 5.75) to[out=0,in=90] (6.8, 3.45);
    \draw (3.8, 5.75) node[left, gray] {\footnotesize $Vorlage$};
    \draw[-latex'] (4, 5) to[out=0,in=90] (6, 3.4);
    \draw (3.8, 5) node[left] {\footnotesize $Vergleichsdaten$};
    \draw[-latex'] (11.3, 3) to[out=180,in=-90] (7.7, 3.5);
    \draw (11.5, 3) node[right] {\footnotesize $Differenz$};
\end{tikzpicture}

在此处输入图片描述

相关内容