如何在 Tikz 中绘制以下描述波浪的图形?

如何在 Tikz 中绘制以下描述波浪的图形?

我对 Tikz 还不太熟悉,在网上找不到这个。如何绘制这个相当复杂的波浪图形?

在此处输入图片描述

我只知道如何创建点并用直线连接它们。我不知道如何制作像上面波浪所示的曲线,我不知道如何在图中所示的所有位置放置标签以及如何像 y1 和 y2 那样旋转它们,我不知道如何用蓝色填充该区域,我不知道如何将顶部拱门涂成绿色。我真的不知道从哪里开始,也不知道 Tikz 是否能生成这样的图形。我感谢所有帮助者,并感谢所有在这方面的帮助。

编辑:这是我目前所拥有的以及我遇到的问题

\begin{tikzpicture}[scale=2.25]
\coordinate (A) at (0cm,2cm);
\coordinate (B) at (0cm,0cm);
\coordinate (C) at (2cm,0cm);
\coordinate (D) at (2cm,2cm);
\draw (A) -- (B) -- (C) -- (D);

\end{tikzpicture}

答案1

你可以用贝塞尔曲线制作曲线,使用节点时可以添加标签。我自己昨天才开始学习 Tikz,但我做了以下事情,所以我相信你也能很快赶上;

\documentclass{article}

\usepackage{tikz}
\definecolor{water}{rgb}{0,1,1}

\begin{document}

\begin{tikzpicture}
\draw[fill=water] (0,1) .. controls (1,1.5) and (2,1.5) .. (3,1) -- (3,0) -- (0,0) -- (0,1) 
node at (1.5,0.8)[]{g(x)} 
node at (1.5,1.6)[]{f(x)};
\draw (0,0) -- (0,2);
\draw (3,0) -- (3,2);
\end{tikzpicture}

\end{document}

生成:

在此处输入图片描述

编辑:为了改变曲线的颜色,我会在单独的 \draw 命令中定义曲线。

\begin{tikzpicture}
\draw[fill=water, color=water] (0,1) .. controls (1,1.5) and (2,1.5) .. (3,1) -- (3,0) -- (0,0) -- (0,1) 
node at (1.5,0.8)[black] {g(x)} 
node at (1.5,1.6)[black]{f(x)};
\draw[color=green] (0,1) .. controls (1,1.5) and (2,1.5) .. (3,1);
\draw[black] (3,0) -- (0,0) -- (0,2);
\draw (3,0) -- (3,2);
\end{tikzpicture}

相关内容