Wie lässt sich an jedem n-ten Punkt eine Markierung setzen?

Wie lässt sich an jedem n-ten Punkt eine Markierung setzen?

Ich habe eine lange CSV-Datendatei:

x,y1,y2...
1,v1,v1...
2,v2,v2...
....

Ich pgfplotszeichne alle Linien. Ich möchte auch Markierungsformen hinzufügen. Das Problem ist jedoch, dass die Daten zu dicht sind und ich nur begrenzten Platz habe, sodass die Markierungen zusammenkleben.

Ich habe es versucht:

 \addplot[blue, thin, mark=square, each nth point=20] table ...

Es wurden jedoch auch die Datenpunkte übersprungen.

Ich möchte eine glatte Linie, aber nur wenige Striche. Wie kann ich das erreichen?

Antwort1

Sie müssen mark repeatdie Taste verwenden, um Markierungen in regelmäßigen Abständen zu wiederholen. mark phasegibt an, an welcher Stelle die Markierungen beginnen sollen. Zum Beispiel:

make repeat = r,
mark phase = p

setzt die Markierung zuerst am p-ten Punkt und dann am p+r-ten und dann p+2ram -ten Punkt usw. Ein Beispiel aus dem Handbuch

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
  \begin{tikzpicture}
\begin{axis}[title=Without \texttt{mark repeat}]
\addplot+[scatter,samples=100] {sin(deg(x))};
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[title= With \texttt{mark repeat=5,mark phase=7}]
\addplot+[scatter,samples=100,
mark repeat=5,mark phase=7]
{sin(deg(x))};
\end{axis}
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen