Bitte beachten Sie den folgenden Beispielcode:
\documentclass{article}
\usepackage{pgfplotstable}
\pgfplotstableread{
1 19.178 26.027 8.219 6.849 39.726 1
2 54.795 21.918 4.110 6.849 12.329 1
3 28.767 16.438 6.849 8.219 39.726 1
4 63.014 2.740 2.740 8.219 28.767 2
5 90.411 1.370 6.849 0.000 1.370 2
6 15.068 2.740 16.438 8.219 57.534 2
7 67.123 0.000 0.000 1.000 32.877 3
8 72.603 6.849 5.479 5.000 15.068 3
9 56.164 12.329 6.849 4.110 20.548 3
10 50.685 4.110 8.219 1.370 35.616 3
}\datatable
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot table[x index=0,y index=4] \datatable;
\end{axis}
\end{tikzpicture}
\end{document}
Produktion
Ich möchte die Handlung unterbrechen,ohne die Tabelle zu verändern(wenn möglich) an den gewünschten Stellen, um etwa Folgendes zu erhalten (ich habe das Bild durch manuelles Löschen einiger Verbindungslinien erhalten):
Idealerweise würde ich dies gerne mit nur einem machen \addplot
, aber wenn das nicht möglich ist, sind alle Alternativen willkommen.
Antwort1
Mir fallen zwei Möglichkeiten ein:
1)Wenn Sie Ihre Tabelle ändern könneneine einfache Lösung besteht darin, eine Art undefinierter Daten hinzuzufügen und die Option zu verwenden unbounded coords=jump
. Entweder „nan“ oder „inf“ funktioniert. Ich poste das Ergebnis nicht, weil es genau so aussieht, wie Sie es möchten:
\documentclass{article}
\usepackage{pgfplotstable}
\pgfplotstableread{
1 19.178 26.027 8.219 6.849 39.726 1
2 54.795 21.918 4.110 6.849 12.329 1
3 28.767 16.438 6.849 8.219 39.726 1
nan nan nan nan nan nan nan
4 63.014 2.740 2.740 8.219 28.767 2
5 90.411 1.370 6.849 0.000 1.370 2
6 15.068 2.740 16.438 8.219 57.534 2
nan
7 67.123 0.000 0.000 1.000 32.877 3
8 72.603 6.849 5.479 5.000 15.068 3
9 56.164 12.329 6.849 4.110 20.548 3
10 50.685 4.110 8.219 1.370 35.616 3
}\datatable
\begin{document}
\begin{tikzpicture}
\begin{axis}[unbounded coords=jump]
\addplot table[x index=0,y index=4] \datatable;
\end{axis}
\end{tikzpicture}
\end{document}
2)Wenn die Tabelle NICHT geändert werden kannIch schlage vor, den Plot aufzuteilen und zu definieren domains
. Dies ist nicht unproblematisch, da Sie das Format in diesen wiederholen müssen (wie[red, solid, thick,...])
\begin{tikzpicture}
\begin{axis}
\addplot+[forget plot] table[x index=0,y index=4, restrict x to domain=0:3] \datatable;
\addplot+[forget plot] table[x index=0,y index=4, restrict x to domain=4:6] \datatable;
\addplot+[ ] table[x index=0,y index=4, restrict x to domain=7:10] \datatable;
\end{axis}
\end{tikzpicture}