一张图中展示了两个图表,中间留有相当大的空白,不太美观。我想通过跳过中间的空白让它们靠得更近一些。
这是图表
\documentclass{standalone}
\usepackage{tikz,pgfplots}
\begin{document}
\begin{tikzpicture}
\pgfplotsset{
scale only axis}
\begin{axis}[tick align=center,xmin=546, xmax=565, ymin=0, ymax=60]
\addplot[line width=1pt]
coordinates{(564,0)(563,10)(562,20)(561,30)(560,40)(559,50)(558,60)};
\addplot[dotted,line width=1pt]
coordinates{(552,0)(551,10)(550,20)(549,30)(548,40)(547,50)(546,60)};
\end{axis}
\end{tikzpicture}
\end{document}
我想象中的 x 轴如下:
\documentclass{standalone}
\usepackage{tikz,pgfplots}
\begin{document}
\begin{tikzpicture}
\foreach \x/\y in {0/550, 1/552, 4/556, 5/558}
\draw (\x,0.25) -- (\x,-0.25) node[below]{$\y$};
\draw (-0.5, 0)--(2,0);
\draw (3, 0)--(5.5,0);
\draw[dotted] (2,0)--(3,0);
\end{tikzpicture}
\end{document}
答案1
这几乎完全取自这个答案当然,必须交换x
和的角色y
,然后ymin
和ymax
变成xmin
和xmax
,因为Stefan Pinnow 提到。
\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16,scale only axis}
\usepgfplotslibrary{groupplots}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[width=6cm,
group style={
group name=my fancy plots,
group size=2 by 1,
%xticklabels at=edge bottom,
horizontal sep=0pt
},
]
\nextgroupplot[tick align=center,xmin=545, xmax=553, ymin=0, ymax=60,
axis y line=left]
\addplot[line width=1pt]
coordinates{(564,0)(563,10)(562,20)(561,30)(560,40)(559,50)(558,60)};
\addplot[dotted,line width=1pt]
coordinates{(552,0)(551,10)(550,20)(549,30)(548,40)(547,50)(546,60)};
\nextgroupplot[tick align=center,xmin=557, xmax=565, ymin=0, ymax=60,
axis x discontinuity=crunch,axis y line=right,ytick=\empty,
xtick={560,562,564}]
\addplot[line width=1pt]
coordinates{(564,0)(563,10)(562,20)(561,30)(560,40)(559,50)(558,60)};
\addplot[dotted,line width=1pt]
coordinates{(552,0)(551,10)(550,20)(549,30)(548,40)(547,50)(546,60)};
\end{groupplot}
\end{tikzpicture}
\end{document}