如何使用“仅标记”属性来标记绘制函数的点?

如何使用“仅标记”属性来标记绘制函数的点?

我正在尝试在 tikzpicture 中绘制一个函数,它仅显示特定点并标记这些点。

我的代码如下所示:

\documentclass[12pt,a4paper]{article}

\usepackage{tikz}
\usetikzlibrary{fit}
\usetikzlibrary{calc}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{patterns, patterns.meta}

\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\usepgfplotslibrary{fillbetween}
\usetikzlibrary{backgrounds, intersections}

\begin{document}

\begin{tikzpicture}[scale=1]
    \begin{axis}[
        width=0.6\linewidth,
        xmin=-72,
        xmax= 24,
        ymin=-16,
        ymax= 40,
        x=0.1cm,
        y=0.1cm,
        xtick distance=8,
        ytick distance=8,
        axis lines=middle,
        xlabel=$\Re z_n$,
        ylabel=$\Im z_n$,
        grid={both}]        
            
        \addplot[blue, only marks, domain=1:12, samples=12] ({sqrt(2)^(\x)*cos(deg(\x*pi/4))},{sqrt(2)^(\x)*sin(deg(\x*pi/4))});
\end{tikzpicture}

\end{document}

此代码绘制了点。现在我想标记这些点。我尝试了以下代码,但它不起作用。我希望你能帮助我。

\foreach \x in {1,...,12} 
    \draw[blue] ({sqrt(2)^(\x)*cos(deg(\x*pi/4))},{sqrt(2)^(\x)*sin(deg(\x*pi/4))}) node[above]  {$z_\x$};

我的问题是,我可以直接在 addplot 函数中添加标签吗?还是需要编写一个添加标签的循环?正确的代码是什么样的。

我希望你可以帮助我。

答案1

喜欢这个吗?nodes near coords*={$z_{\coordindex}$},

代码

\documentclass[boreder=5mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}[scale=1]
    \begin{axis}[
        width=0.6\linewidth,
        xmin=-72,
        xmax= 24,
        ymin=-16,
        ymax= 40,
        x=0.1cm,
        y=0.1cm,
        xtick distance=8,
        ytick distance=8,
        axis lines=middle,
        xlabel=$\Re z_n$,
        ylabel=$\Im z_n$,
        grid={both},
        nodes near coords*={$z_{\coordindex}$},
        ]            
        \addplot+[blue, only marks,  domain=1:12, samples=12] ({sqrt(2)^(\x)*cos(deg(\x*pi/4))},{sqrt(2)^(\x)*sin(deg(\x*pi/4))});
    \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容