Parcelas com apenas algumas marcas dispersas e legenda correta

Parcelas com apenas algumas marcas dispersas e legenda correta

Gostaria de desenhar vários gráficos com linhas e apenas algumas marcas. As marcas são espaçadas irregularmente, então usei um método mencionado no manual pgfplots, seção 4.8.5 (Aparência da legenda), página 159, every legend image postentrada. As linhas e as marcas são criadas por \addplotcomandos diferentes. O problema com este método é ter uma legenda mostrando as linhas e as marcas.

Aqui está uma adaptação do código fornecido no manual pgfplots:

\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[legend image post style={mark=*}]
\addplot+[only marks,forget plot]coordinates {(0.5,-0.5) (1,-1) (1.5,-1.5)};
\addplot+[mark=none,smooth,domain=0:2]{-x};
\addlegendentry{Parabola}

\addplot+[only marks,forget plot]coordinates {(0.3,0.3) (0.45,0.45) (1.7,1.7)};
\addplot+[mark=none,smooth,domain=0:2]{x};
\addlegendentry{Parabola}
\end{axis}
\end{tikzpicture}
\end{document}

Este código funciona quando há apenas uma curva porque é possível especificar a marca de plotagem na legend image post stylechave. Porém, você sabe como isso poderia ser adaptado a diversas parcelas com marcas diferentes?

Responder1

Ao fornecer o comando legend image post stylepara cada em \addplotvez de para o axis, ele se aplica apenas a cada gráfico individual:

\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot+[only marks,forget plot]coordinates {(0.5,-0.5) (1,-1) (1.5,-1.5)};
\addplot+[mark=none,smooth,domain=0:2,legend image post style={mark=*}]{-x};
\addlegendentry{Parabola}

\addplot+[only marks,forget plot]coordinates {(0.3,0.3) (0.45,0.45) (1.7,1.7)};
\addplot+[mark=none,smooth,domain=0:2,legend image post style={mark=square*}]{x};
\addlegendentry{Parabola}
\end{axis}
\end{tikzpicture}
\end{document}

informação relacionada