범례에 사각형 표시를 채우시겠습니까?

범례에 사각형 표시를 채우시겠습니까?

나는 간단한 그래프를 생성하기 위해 다음 코드를 사용하고 있으며 그래프의 음영 영역을 나타내기 위해 범례에 채워진 회색 사각형을 표시하고 싶습니다. 모든 것이 여전히 흰색 사각형 표시로 이어집니다.

    \begin{tikzpicture}
\begin{axis}[
    inner axis line style={>={Latex[round]}},
    axis lines=left,
    ymin=0,
    ymax=10,
    xmin=0,
    xmax=10,
    yticklabels={,,},
    xticklabels={,,},
    ticks=none,
    xlabel=Quantity (q),
    ylabel=Price (\$),
    legend entries={
        total willingness to pay,
        marginal willingness to pay
    },
    legend pos=north east,
    legend style={draw=none}
    ]
    \addlegendimage{only marks, mark=square}
    \addlegendimage{only marks, mark=o}
    \addplot[solid,domain=0:10,samples=100]{-5/2*x^(1/2)+15/2};
    \addplot[draw=none,name path=A,domain=3:6,fill=gray]{-5/2*x^(1/2)+15/2}\closedcycle;    
\end{axis}
\end{tikzpicture}

도와주셔서 감사합니다!

답변1

채우는 mark=square*대신 사용해야합니다 . 원하는 색상으로 채울 수 있습니다 mark=square.color

\documentclass[border=1mm]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
    inner axis line style={>={Latex[round]}},
    axis lines=left,
    ymin=0,
    ymax=10,
    xmin=0,
    xmax=10,
    yticklabels={,,},
    xticklabels={,,},
    ticks=none,
    xlabel=Quantity (q),
    ylabel=Price (\$),
    legend entries={
        total willingness to pay,
        marginal willingness to pay
    },
    legend pos=north east,
    legend style={draw=none}
    ]
    \addlegendimage{only marks, mark=square*,color=gray}
    \addlegendimage{only marks, mark=o}
    \addplot[solid,domain=0:10,samples=100]{-5/2*x^(1/2)+15/2};
    \addplot[draw=none,domain=3:6,fill=gray]{-5/2*x^(1/2)+15/2}\closedcycle;
\end{axis}
\end{tikzpicture}
\end{document}

위 코드의 결과를 보여주는 이미지

관련 정보