如何打断剧情?

如何打断剧情?

请考虑以下示例代码:

\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}

制作

在此处输入图片描述

我想要做的是打断剧情,无需修改表格(如果可能的话),在所需的位置得到类似这样的图像(我通过手动擦除一些连接线获得了图像):

在此处输入图片描述

理想情况下,我想只用一个来做到这一点\addplot,但如果不可能,欢迎使用任何替代方案。

答案1

我能想到两个选择:

1)如果你可以修改你的表格一个简单的解决方法是添加某种未定义的数据并使用选项unbounded coords=jump。“nan”或“inf”都可以。我没有发布结果,因为它看起来和你想要的完全一样:

\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)如果表不能被修改我建议拆分情节并定义domains。这并非没有问题,因为您必须在这些中重复格式,(例如[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}

相关内容