pgfplots groupplots 中的两个 x 轴,一个在另一个之下

pgfplots groupplots 中的两个 x 轴,一个在另一个之下

我有以下情节。我\addplot table通过更改命令\addplot coordinates来创建一个最小示例。

\documentclass{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots,units}
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[
group style={
    group size=1 by 2,
    horizontal sep=1.5cm,
    xlabels at=edge bottom,
    ylabels at=edge left,
},
width=7.3cm,
height=7.3cm,
scale only axis,
ymin=-4e-8,ymax=6e-8,
ytick distance=2e-8,
scaled x ticks=false,
change x base,
x SI prefix=nano,
x unit=s,
xlabel={time},
enlargelimits=false,
grid=major,
]
\nextgroupplot[
ylabel=$ s_{out,R} $,
]
\addplot[blue] coordinates { (0,-3e-8) (100e-9,5e-8) };
\nextgroupplot[ylabel=$ s_{out,I} $,]
\addplot[red] coordinates { (0,-3e-8) (100e-9,5e-8) };
\end{groupplot}
\end{tikzpicture}
\end{document}

问题:是否可以在“时间 [ns]”轴下方添加一个额外的 x 轴,标记为“频率 [GHz]”,范围从 0.5 GHz 到 3.5 GHz?(类似于此处所做的具有多个 x 轴和注释的钟形曲线或此处如何添加具有不同缩放比例的多个 x 轴?

谢谢你!

答案1

组图实际上只是一个轴,因此您可以使用相同的想法:在组中添加第三个图。您只需要稍微更改有关 xlabels 和单位的选项。例如:

\documentclass{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots,units}
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[
group style={
    group size=1 by 3,
    horizontal sep=1.5cm,
    ylabels at=edge left,
},
width=7.3cm,
height=7.3cm,
scale only axis,
ymin=-4e-8,ymax=6e-8,
ytick distance=2e-8,
scaled x ticks=false,
change x base,
x SI prefix=nano,
enlargelimits=false,
grid=major,
]
\nextgroupplot[
ylabel=$ s_{out,R} $,
]
\addplot[blue] coordinates { (0,-3e-8) (100e-9,5e-8) };
\nextgroupplot[ylabel=$ s_{out,I} $,xlabel={time},x unit=s]
\addplot[red] coordinates { (0,-3e-8) (100e-9,5e-8) };

\nextgroupplot[
  axis y line=none,
  axis x line=bottom,
  grid=none,
  xlabel=Frequency,
  x SI prefix=giga,
  x unit=Hz,
  xmin=0.5e9,
  xmax=3.5e9,
  height=0.2cm
]
\end{groupplot}
\end{tikzpicture}
\end{document}

(对于这个截图,我缩小了它height以使其更紧凑。)

输出不同高度的代码

相关内容