brace
假设我们有一些简单的代码来在样式节点上方显示文本TikZ
。
最小工作示例(MWE):
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmin=0,xmax=1,ymin=0,ymax=1]
\draw [decorate,decoration={brace,amplitude=5pt,raise=4pt},yshift=0pt]
(20,50) -- (80,50) node [black,midway,align=center,yshift=0.75cm] {\footnotesize Test\\\footnotesize Test};
\end{axis}
\end{tikzpicture}
\end{document}
结果截图:
问题说明:
如您所见,这两行文本之间的空白空间非常大,因此看起来不太美观。
如何减少两行文本之间的空白?
答案1
使用字体\footnotesize
(或任何其他大小\small
,如\large
等)的适当用法是
font=\footnotesize
或者
node font=\footnotesize
据我所知,对于您的 MWE,这两个选项的输出没有明显差异。但是,有两个字体命令可能会很有用,因此您可以说\tikzset{every node/.append style={font=\sffamily}}
并添加到特定节点,node font=\footnotesize
这样该节点的节点字体将同时是无衬线和小字体。
应用于你的 MWE,你可以这样做
\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmin=0,xmax=1,ymin=0,ymax=1]
\draw [decorate,decoration={brace,amplitude=5pt,raise=4pt},yshift=0pt]
(20,50) -- (80,50) node
[black,midway,align=center,yshift=0.75cm,font=\footnotesize] {Test\\ Test};
\end{axis}
\end{tikzpicture}
\end{document}
如果要进一步减小距离,请使用例如 这样的节点内容{Test\\[-0.2em] Test}
。无论大小如何,此调整始终可用。如果文本的不同行具有不同的字体大小,那么这可能更为重要。