我怎样才能画出小波浪?

我怎样才能画出小波浪?

我正在尝试使用 TikZ 绘制下图,但我不知道如何产生代表光子的红色波:

在此处输入图片描述

这是我的代码及其生成的内容:

\begin{tikzpicture}[>=stealth]
\filldraw[gray!40!white] (0,0)circle(0.3);
\draw[smooth] (0,0)circle(0.3);
\draw[smooth] (0,0)circle(1);
\draw[smooth] (0,0)circle(2);
\node[right] at (30:1) {$n=1$};
\node[right] at (30:2) {$n=2$};
\draw[->, smooth] (30:2)--(30:1);
\filldraw[black] (30:1)circle(0.025);
\filldraw[black] (30:2)circle(0.025);
\end{tikzpicture}

在此处输入图片描述

关于如何制作它,您有什么想法吗?

答案1

您可以使用\usetikzlibrary{snakes}

\documentclass[border=1cm]{standalone}
\usepackage{tikz}
\usetikzlibrary{snakes}

\begin{document}

    \begin{tikzpicture}[->,>= stealth]

\draw[snake=snake,red] (0,0) -- (3,0) node[below,xshift=-1.5cm,yshift=-0.25cm] {$\Delta E=hv$};

    \end{tikzpicture}

\end{document}

在此处输入图片描述

您可以使用以下方法实现相同目的\usetikzlibrary{decorations.pathmorphing}

\documentclass[border=1cm]{standalone}
\usepackage{tikz}
\usetikzlibrary{decorations.pathmorphing}

\begin{document}
    
    \begin{tikzpicture}[->,>= stealth]
        
        \draw[decorate,decoration=snake,red]  (0,0) - - (3,0) node[below,xshift=-1.5cm,yshift=-0.25cm] {$\Delta E=hv$};
        
    \end{tikzpicture}
    
\end{document}

在此处输入图片描述

相关内容