是否可以让 LaTeX 在环境中增加标题table
?如果可以,我该怎么做?
例如,我希望有 7 列和 7 行,其中除第一列之外的列blue = $1$ & blue = $2$ & ...
以及除第一行之外的行都是red = $1$ & ....
有没有办法让 LaTeX 做到这一点?在 中TikZ
,我可以使用foreach
循环。
\documentclass{article}
\begin{document}
\begin{table}
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
& blue = $1$ & blue = $2$ & blue = $3$ & ... \\
red = $1$ & & ... \\
red = $2$ & & ... \\
red = $3$ & & ... \\
...
\end{tabular}
\end{table}
\end{document}
答案1
这是一种方法,全部由array
在单元格开始处插入内容:
\documentclass{article}
\usepackage{array}
\newcounter{bluecol}\newcounter{redrow}
\newcommand{\insertblue}{%
\relax\ifnum\value{bluecol}>0 blue${}=\number\numexpr7-\value{bluecol}$\addtocounter{bluecol}{-1}\fi}
\newcommand{\insertred}{%
\stepcounter{redrow}red${}= \theredrow$}
\begin{document}
\setcounter{redrow}{0}
\setcounter{bluecol}{6}
\begin{tabular}{|>{\insertred}c*{6}{|>{\insertblue}c}|}
\hline
\multicolumn{1}{|c|}{} &&&&&& \\
&&&&&& \\
&&&&&& \\
&&&&&& \\
&&&&&& \\
&&&&&& \\
&&&&&& \\
\hline
\end{tabular}
\end{document}
第一个\multicolumn
是为了防止red
被设置在第一行。