我需要在包中的绘图轴上进行某种跳跃pgfplots
。类似于下图中部分刻度被卡住的情况。
如果顶部和底部的迹线有不同的比例(就像图中一样),那将会很有趣。
任何想法都值得赞赏。
答案1
您可以简单地使用两个相对于彼此定位的轴。
下面是一个示例,我定义了一个新键axis break gap
,可用于设置轴之间的间隙:
\documentclass[border=5mm]{standalone}
\usepackage{pgfplotstable}
\tikzset{
axis break gap/.initial=1mm
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
name=bottom axis,
domain = 0:pi,
scale only axis,
width=8cm, height=4cm,
axis x line*=bottom
]
\addplot [smooth] {-cos(deg(x))^6/10+0.2};
\addplot [smooth] {-cos(deg(x))^6/10+0.4};
\end{axis}
\begin{axis}[
at=(bottom axis.north),
anchor=south, yshift=\pgfkeysvalueof{/tikz/axis break gap},
domain = 0:pi,
scale only axis,
width=8cm, height=4cm,
axis x line*=top,
xticklabel=\empty,
after end axis/.code={
\draw (rel axis cs:0,0) +(-2mm,-1mm) -- +(2mm,1mm)
++(0pt,-\pgfkeysvalueof{/tikz/axis break gap})
+(-2mm,-1mm) -- +(2mm,1mm)
(rel axis cs:1,0) +(-2mm,-1mm) -- +(2mm,1mm)
++(0pt,-\pgfkeysvalueof{/tikz/axis break gap})
+(-2mm,-1mm) -- +(2mm,1mm);
}
]
\addplot [smooth] {-cos(deg(x))^6+2};
\addplot [smooth] {-cos(deg(x))^6+4};
\end{axis}
\end{tikzpicture}
\end{document}