No pude encontrar información sobre esto: ¿Cómo puedo hacer que se muestre la línea?encima/delante de¿el marcador? Ahora mismo está tramadodetrásel marcador de diamante en el diagrama así como en la leyenda.
\documentclass{standalone}
\usepackage{xcolor, pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot[mark=square*, mark options={fill=gray}] coordinates {(1,2)(2,1)};
\legend{x};
\end{axis}
\end{tikzpicture}
\end{document}
Este sería el caso deseado:
Respuesta1
Hay una parte sencilla: puedes obtener la trama como desees usando mark layer
. Simplemente dibuja las marcas en una capa que está detrás de la trama principal. Y luego está la parte que requiere un poquito más de esfuerzo: hacer que la leyenda cumpla. Para ello modifiqué ligeramente ellegend image code
. (No lo sé precisamentesaberpor qué uno tiene que hacer esto, pero dado que la leyenda normalmente debe estar delante de las tramas, tiene sentido que el contenido de la leyenda vaya en una capa diferente y, por lo tanto, la capa de la marca se reajuste).
\documentclass{standalone}
\usepackage{xcolor, pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[set layers,mark layer=axis background,
legend image code/.code={
\draw [mark repeat=2,mark phase=2,#1] plot coordinates {
(0cm,0cm) (0.3cm,0cm) (0.6cm,0cm)};
\draw [#1] (0cm,0cm) rectangle (0.5cm,0cm);
}]
\addplot[mark=square*, mark options={fill=gray}] coordinates {(1,2)(2,1)};
\legend{x};
\end{axis}
\end{tikzpicture}
\end{document}
Respuesta2
¡Bienvenido a TeX.SE!
Si traza los puntos (pero con tikz \node
y no con pgfplot mark
) antes de agregar el gráfico, es fácil:
\documentclass{standalone}
\usepackage{xcolor, pgfplots}
\usetikzlibrary{shapes}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\node[diamond,fill,color=orange,inner sep=2pt] at (axis cs:1,2) {};
\node[diamond,fill,color=red,inner sep=2pt] at (axis cs:2,1) {};
\node[diamond,fill,color=green,inner sep=2pt] at (axis cs:1.8,1.2) {};
\addplot[thick] coordinates {(1,2)(2,1)};
\legend{x};
\end{axis}
\end{tikzpicture}
\end{document}
PD: Estoy seguro de que eso pgfplots
también tiene una forma, pero realmente no la uso, así que espere otra respuesta antes de aceptar porque la uso mayoritariamente tikz
y no.pgfplots