我正在使用这个代码
\begin{document}
\def\xmin{5}
\def\xmax{6}
\def\domfactor{4}
\def\xmindom{\xmin/\domfactor}
\def\xmaxdom{\xmin*\domfactor}
{\color{fg}
\begin{tikzpicture}
\begin{axis}[
title={20dB Coupler (5-6$\,\si{GHz}$)},
xlabel={$f$ (GHz)},
ylabel={$S$ ($\si{dB}$)},
axis y line*=left,
xmin=\xmin, xmax=\xmax,
grid=major,
]
\addplot [
red,
] table[x=freq, y=s31] {data/openems_coupler.dat};
\end{axis}
\begin{axis}[
ylabel={Directivity ($\si{dB}$)},
axis y line*=right,
axis x line=none,
xmin=\xmin, xmax=\xmax,
]
\addplot [
orange,
] table[x=freq, y expr={\thisrow{s31}-\thisrow{s41}}] {data/openems_coupler.dat};
\end{axis}
\end{tikzpicture}
}
\end{document}
创建以下图表:
不过,这件事让我有点烦。我希望设置右轴,使刻度标记出现在与左刻度标记相同的垂直位置,这样网格就会应用于图的两侧。当然,我可以省略网格,但我喜欢把它放在那里。
是否pgfplots
提供了一种方法来做到这一点,还是我必须手动尝试(通过设置 ymin 和 max 以及 tick 设置)?