
Ich zeichne eine Reihe von Diagrammen pgfplots
und lade die Daten aus einer CSV-Datei. Die CSV-Datei enthält die Ergebnisse eines Tests, der 10 Mal ausgeführt wurde, und eine Spalte, die den Durchschnitt zeigt. Ich habe ein Diagramm mit einer Spalte als x-Achse und einer anderen als y-Achse erstellt und dabei den folgenden Code verwendet:
\addplot[
color=blue,
only marks,
mark=+,
mark size=2.9pt]
table[x={xColumn},y={AvgColumn}]
{file.csv};
aber ich muss alle 10 Spalten darstellen. Dies könnte ich erreichen, indem ich den obigen Code 10 Mal wiederhole und dabei jedes Mal einen anderen Spaltennamen verwende y={...}
. Dies würde jedoch die Bearbeitung des Dokuments zu einem Albtraum machen, da ich mehrere Diagramme habe und in manchen Fällen mehr als einen Ergebnissatz auf derselben Achse darstellen muss. Ich habe versucht, zu verwenden y={column1,column2,...}
, aber das funktioniert nicht. Gibt es eine Möglichkeit, so etwas zu tun, oder vielleicht eine Möglichkeit, alle Einstellungen einmal festzulegen und sie dann 10 Mal wiederzuverwenden (so dass nur eine Zeile pro Spalte geschrieben werden muss)?
Danke
Antwort1
Sie müssen die 10 Spalten nicht in einer separaten Abbildung darstellen, PGFPLOTS kann mehrere \addplot
auf denselben beiden Achsen verarbeiten. So können Sie es machen:
\begin{tikzpicture}
\begin{axis}[<axis specifications>]
\addplot[
color=blue,
only marks,
mark=+,
mark size=2.9pt]
table[x={xColumn},y={AvgColumn}]
{file.csv};
\foreach \column in {1,...,10}{
\addplot+[] table[x={xColumn},y={column\column}] {file.csv};
}
\end{axis}
\end{tikzpicture}