在 pgfplot 中的图例中添加自定义条目

在 pgfplot 中的图例中添加自定义条目

我想在图例中添加一些手动输入来解释图左侧的字符“A”和“B”。我不知道该把它们的定义放在哪里。

在此处输入图片描述

因此,图例中“图 E”下方应为“A = ...”之类的内容。有什么办法可以做到这一点吗?或者还有其他选择吗?

答案1

\addlegendimage和的组合\addlegendentry允许添加自定义条目。第一个的目的是添加图形选项,第二个的目的是添加描述文本。

在您的情况下,小图例图像可能只是文本“A”或“B”,而描述文本会......好吧,描述这些组。

可以定义一种不使用填充区域和小图例图像的样式,而只是使用带有文本的节点:

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}

\pgfplotsset{
    legend image with text/.style={
        legend image code/.code={%
            \node[anchor=center] at (0.3cm,0cm) {#1};
        }
    },
}

\begin{document}

\begin{tikzpicture}
\begin{semilogyaxis}[
    domain=0:4,
]
    \addplot {x};   \addlegendentry{$x$}
    \addplot {x^2}; \addlegendentry{$x^2$}
    \addplot {x^3}; \addlegendentry{$x^3$}
    \addlegendimage{legend image with text=A}
    \addlegendentry{$= 42$}
    \addlegendimage{legend image with text=B}
    \addlegendentry{$\approx 43$}
    \addplot {x^(-1)}; \addlegendentry{$x^{-1}$}
    \addplot {x^(-2)}; \addlegendentry{$x^{-2}$}
    \addplot {x^(-3)}; \addlegendentry{$x^{-3}$}
\end{semilogyaxis}
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容