pgfplots 中图例的不透明度填充

pgfplots 中图例的不透明度填充

我被迫制作一些需要有图例的小情节。这意味着不可避免地会有部分情节被图例所覆盖。

为了保持情节的可读性,我想背景图例部分透明。我的方法是使用legend style={fill opacity=0.8, draw opacity=1},但是,这会使整个图例透明,而不仅仅是填充。

以下是 MWE:

\documentclass{article}

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

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[
            width=5cm,
            axis equal,
            legend style={fill=white, fill opacity=0.6, draw opacity=1},
            ]
            \addplot[samples=100, domain=0:2*pi, red] 
            ({cos(deg(x))}, {sin(deg(x))}); 
            \addlegendentry{test}
        \end{axis}
    \end{tikzpicture}
\end{document}

输出为:

完全透明的图例

如您所见,轮廓已完全绘制,但图例内的文字也是透明的。如何避免这种情况,而只使填充为半透明?

答案1

您可以添加密钥

text opacity =1

按照你的legend style命令。

截屏

% arara: pdflatex
\documentclass[tikz]{standalone}

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

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[
            width=5cm,
            axis equal,
            legend style={fill=white, fill opacity=0.6, draw opacity=1,text opacity=1},
            ]
            \addplot[samples=100, domain=0:2*pi, red] 
            ({cos(deg(x))}, {sin(deg(x))}); 
            \addlegendentry{test}
        \end{axis}
    \end{tikzpicture}
\end{document}`

相关内容