矩阵中不同大小的盒子

矩阵中不同大小的盒子

我希望表示 CKM 矩阵

\[
V=\begin{pmatrix} 
  0.974 & 0.225 & 0.003 \\ 
  0.225 & 0.973 & 0.041 \\
  0.009 & 0.040 & 0.999 
\end{pmatrix}
\]

视觉上。也就是说,插入正确大小的框而不是数字。就像这样。

在此处输入图片描述

我怎样才能实现这个目标?

答案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.01.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}

在此处输入图片描述

相关内容