我想在 中现有的括号中添加上标\matrix (m) [table]
。这将表示转置。我需要修饰括号以保留与另一个 的间距\matrix (m) [table]
。
我的矩阵和尝试由
\documentclass{article}
%%% tikz
\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{arrows}
\usetikzlibrary{decorations.text,decorations.pathreplacing,matrix,calc,positioning}
\usetikzlibrary{calligraphy}% AFTER decorations.text
\tikzset{
table/.style={
matrix of math nodes,
row sep=-\pgflinewidth,
column sep=-\pgflinewidth,
nodes={rectangle,text width=3em,align=center},
text depth=1.25ex,
text height=2.5ex,
nodes in empty cells,
left delimiter=[,
right delimiter={]},
ampersand replacement=\&
}
}
\newcommand*{\connectorH}[4][]{
\draw[#1] (#3) -| ($(#3) !#2! (#4)$) |- (#4);% https://hugoideler.com/wp-content/uploads/2013/01/connector.tex
}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}[baseline,decoration=brace]
\matrix (m) [table] {
%1 %2 %3 %4 %5 %6 %7
A_{1,:}^\top\\
A_{2,:}^\top\\
};
\node at (m-1-1.north east) {$\qquad\quad{\top}$};
\end{tikzpicture}
\end{figure}
\end{document}
但转置最终只会出现在矩阵的中间,而不会修饰矩阵的右侧括号。有没有一种好的方法可以在使用的同时做到这一点\matrix (m) [table]
?
答案1
您可以使用类似的方法\node[anchor=west, xshift=0.67em] at (m-1-1.north east) {$\top$};
,但实际上也可以只替换正确的分隔符(这也会以正确的字体大小呈现上标):
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{matrix}
\tikzset{
table/.style={
matrix of math nodes,
row sep=-\pgflinewidth,
column sep=-\pgflinewidth,
nodes={
text width=3em,
align=center
},
text depth=1.25ex,
text height=2.5ex,
nodes in empty cells,
left delimiter={[},
right delimiter={]},
ampersand replacement=\&
}
}
\begin{document}
\begin{tikzpicture}
\matrix (m) [table, right delimiter={]^{\top}}] {
A_{1,:}^{\top} \\
A_{2,:}^{\top} \\
};
\end{tikzpicture}
\end{document}