答案1
宏\ColorBox
有
- 一个可选参数(默认
black
),用于边框颜色, - 一个强制参数,用于背景颜色(即主颜色)和
- 一个决定大小的强制性参数。
它用:
\makebox[2em][c]{…}
使单元格中的每个方块都位于 的空间水平居中2em
,长度
\fboxsep
经过调整,以便每个盒子都不会添加任何填充。确保
\raisebox
正方形垂直居中。主要景点:
\fcolorbox{<border>}{<background>}{<text>}
这
<border>
是边框颜色(#1
来自\ColorBox
),<background>
是背景颜色(#2
)并且<text>
是实际内容………两条线,一条垂直,一条水平。但它们没有任何厚度(注意
0pt
),这意味着它们只是占据空间,但不显示出来。
代码
\documentclass{article}
\usepackage{amsmath}
\usepackage{xcolor}
\newcommand*\ColorBox[3][black]{%
\makebox[2em][c]{%
\setlength\fboxsep{-.5\fboxrule}%
\raisebox{\dimexpr-#3em+.5ex}{%
\fcolorbox{#1}{#2}{%
\rule{0pt}{\dimexpr#3em*2}%
\rule{\dimexpr#3em*2}{0pt}%
}%
}%
}%
}
\begin{document}
\begin{equation}
\begin{array}{r ccc @{\qquad} r ccc}
& \multicolumn{3}{c}{\text{CKM}} & & \multicolumn{3}{c}{\text{PNMS}} \\
& d & s & b & & v_1 & v_2 & v_3 \\
u & \ColorBox{yellow}{.974}
& \ColorBox{blue}{.225}
& \ColorBox{red}{.003}
& v_e
& \ColorBox{yellow!90!black}{.8}
& \ColorBox{blue}{.65}
& \ColorBox{red}{.2} \\
c &
& \ColorBox{yellow}{.974}
&
& v_\mu
& \ColorBox{green}{.5}
& \ColorBox{blue}{.65}
& \ColorBox{yellow}{.9} \\
t &
&
& \ColorBox{yellow}{.974}
& v_\tau
& \ColorBox{green}{.5}
& \ColorBox{blue}{.65}
& \ColorBox{yellow}{.9} \\
\end{array}
\end{equation}
\end{document}
输出
答案2
答案基于tikz
。
\rect[scale]{colour}
下面是使用 绘制图像的示例宏tikz
。它包含两个简单的命令:一个命令绘制不可见的正方形以确保图像的大小,当前为 1.15 厘米,另一个命令绘制彩色正方形。您可以通过提供比例来决定正方形的大小,例如1.0
(默认)绘制一个大小为 的正方形1cm
。整个图像可以使用 中的可选参数缩放tikzpicture
,也称为scale
- 它与宏使用的参数不同且独立scale
。默认值为,1.0
但1.25
也能给出良好的结果。
\documentclass[12pt]{article}
\usepackage{array}
\usepackage{newtxmath}
\usepackage{tikz}
\usepackage{xcolor}
\colorlet{lightyellow}{green!5!yellow!80}
\colorlet{darkyellow}{red!10!yellow}
\NewDocumentCommand\rect{O{1}m}{%
\def\padding{1.15}% % 1.15 cm invisible box size
\begin{tikzpicture}[
scale=1.0,
inner sep=0pt,
outer sep=0cm,
baseline={([yshift=-.5ex]current bounding box.center)},
]
\path
(-\padding/2,-\padding/2)
rectangle
(\padding/2,\padding/2);
\draw [line width=0.8pt, fill=#2]
(-#1/2,-#1/2)
rectangle
(#1/2, #1/2);
\end{tikzpicture}}
\renewcommand\familydefault{\sfdefault}
\begin{document}
\section*{What is the origin of Quark and Lepton Mixing?}
\begin{table}[tbh]
\centering
\setlength\tabcolsep{0pt}
\begin{tabular}{c @{\;} *{3}{c}}
\multicolumn{4}{c}{CMK} \\
& \textbf{d}
& \textbf{s}
& \textbf{b} \\
\textbf{u}
& \rect{lightyellow}
& \rect[0.4]{blue}
& \rect[0.05]{green} \\
\textbf{c}
& \rect[0.4]{green}
& \rect{lightyellow}
& \rect[0.15]{green} \\
\textbf{t}
& \rect[0.05]{cyan}
& \rect[0.15]{blue}
& \rect{lightyellow}
\end{tabular}%
\hspace{4em}%
\begin{tabular}{c @{\;} *{3}{c}}
\multicolumn{4}{c}{PMNS} \\
& $\boldsymbol{\nu_{1}}$
& $\boldsymbol{\nu_{2}}$
& $\boldsymbol{\nu_{3}}$ \\
$\boldsymbol{\nu_{e}}$
& \rect[0.85]{darkyellow}
& \rect[0.55]{blue}
& \rect[0.1]{red} \\
$\boldsymbol{\nu_{\mu}}$
& \rect[0.4]{green}
& \rect[0.55]{blue}
& \rect[0.7]{lightyellow} \\
$\boldsymbol{\nu_{\tau}}$
& \rect[0.4]{green}
& \rect[0.55]{blue}
& \rect[0.7]{lightyellow} \\
\end{tabular}\qquad
\end{table}
\end{document}