Tikz 矩阵节点第一列中不需要的 vskip

Tikz 矩阵节点第一列中不需要的 vskip

我在第一列中有一个奇怪的垂直跳跃,tikz matrix node我不知道如何消除:

平均能量损失

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}

\begin{tikzpicture}[xshift=1.75cm,yshift=3pt,
table/.style={
    matrix of nodes, row sep=-\pgflinewidth, column sep=-\pgflinewidth,
    nodes={rectangle,align=left,draw=black,font=\scriptsize, 
        minimum height=1.5em,
        text depth=0.5ex,
        text height=2ex},
    nodes in empty cells,
    column 1/.style={text width=0.46\textwidth},
    column 2/.style={text width=0.05\textwidth},
    column 3/.style={text width=0.05\textwidth},
    column 4/.style={text width=0.30\textwidth},
    column 5/.style={text width=0.05\textwidth},
    column 6/.style={text width=0.05\textwidth}
    }]
\node[matrix,table,anchor=north west] (first) at (0.5,4)
{
    Endogenes Konstrukt & $ R^2 $ & $ Q^2 $ & Exogene(s) Konstrukt(e) & $f^2$ & $VIF$ \\ 
    
    (KB) & 0,34 &  0,30 & (GA) & 0,53  & - \\ 
};
\end{tikzpicture}
\end{document}

非常感谢您的帮助!

答案1

只要避免矩阵中的行间出现 CR 即可。或者至少,使用%它时不要太在意。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}

\begin{tikzpicture}[xshift=1.75cm,yshift=3pt,
table/.style={
    matrix of nodes, row sep=-\pgflinewidth, column sep=-\pgflinewidth,
    nodes={rectangle,align=left,draw=black,font=\scriptsize, 
        minimum height=1.5em,
        text depth=0.5ex,
        text height=2ex},
    nodes in empty cells,
    column 1/.style={text width=0.46\textwidth},
    column 2/.style={text width=0.05\textwidth},
    column 3/.style={text width=0.05\textwidth},
    column 4/.style={text width=0.30\textwidth},
    column 5/.style={text width=0.05\textwidth},
    column 6/.style={text width=0.05\textwidth}
    }]
\node[matrix,table,anchor=north west] (first) at (0.5,4)
{
    Endogenes Konstrukt & $ R^2 $ & $ Q^2 $ & Exogene(s) Konstrukt(e) & $f^2$ & $VIF$ \\ 
   (KB) & 0,34 &  0,30 & (GA) & 0,53  & - \\ 
};
\end{tikzpicture}
\end{document}

垂直跳跃

答案2

我会修改你的 MWE 如下:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}

%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}

\noindent\begin{tikzpicture}[
table/.style={
    matrix of nodes, 
    nodes={minimum height=1.5em, text depth=0.5ex, text width=0.05\textwidth,
           inner xsep=0.005\textwidth, outer sep=0pt, anchor=center,
           draw, font=\scriptsize, align=left},
    nodes in empty cells,
    inner sep=0pt, outer sep=0pt,
    column sep=-\pgflinewidth,
    row sep=-\pgflinewidth, 
    column 1/.style={nodes={text width=0.44\textwidth}},
    column 4/.style={nodes={text width=0.30\textwidth}},
    }]
\matrix[table] (first)
{
Endogenes Konstrukt & $R^2$ & $Q^2$ & Exogene(s) Konstrukt(e)   & $f^2$ & $VIF$ \\
(KB)                & 0,34  &  0,30 & (GA)                      & 0,53  & --    \\
};
\end{tikzpicture}
\end{document}

观察以下方面的差异:

  • 节点样式,还包含较窄列的宽度
  • 定义矩阵内外分离(设置为零)
  • 列样式(仅定义两种)
  • 删除了所有移位和节点位置设置(对矩阵位置没有任何影响)

在此处输入图片描述

上图添加了红线,以便页面中的矩阵位置更容易看到。

相关内容