LaTeX에서 표를 어떻게 그릴 수 있습니까?

Dec 18 2020

LaTeX에서 표를 어떻게 그릴 수 있습니까? 특히 표의 내용 하단?

답변

10 Bernard Dec 18 2020 at 19:23

일반 배열로 할 수 있습니다 pstricks. 나는 5 열과 8 열의 마지막 요소를 \rnodes 로 정의 하고 관련 노드 연결과 연결했습니다. 이 방법으로 사용 된 코드의 pstricks 부분에는 라텍스에 대한 차원이 없으므로 다음 텍스트와 겹치는 것을 방지하기 위해 세로 공간 만 포함하는 보충 행을 추가했습니다.

\documentclass{article}
\usepackage{array}
\usepackage{bm}
\usepackage[semibold, condensed]{cabin}
\usepackage[usestackEOL]{stackengine}
\usepackage{pst-node}

\begin{document}

\[
\setlength{\extrarowheight}{3pt}
\begin{array}{ |*{8}{c|}}
\hline
\bm{A} & \bm{B} & \bm{C} & \bm{B\cap C}& \bm{A \cup ∪ (B \cap C)}& \bm{A \cup B}& \bm{A \cup C}& \bm{(A \cup B)\cap(A \cup C)} \\
\hline
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
0 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\
0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 \\
0 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\
1 & 0 & 0 & 0 & 1 & 1 & 1 & 1 \\
1 & 0 & 1 & 0 & 1 & 1 & 1 & 1 \\
1 & 1 & 0 & 0 & 1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 & \rnode{A}{1} & 1 & 1 & \rnode{B}{1} \\
\hline
\multicolumn{8}{c}{\vspace{4ex}}%
\ncbar[linewidth=0.6pt, arrows=<->, arrowinset=0.12,angle=-90, nodesep=1.5ex]{A}{B}
\nbput{\sffamily\bfseries\small \Shortunderstack{Since these columns are identical, we conclude \\%
 that $\;\bm{A\cup(B\cap C)=(A \cup B) \cap (A \cup C)}$}}
\end{array}
\]

\end{document} 

7 Zarko Dec 18 2020 at 20:05

대답하기 위해 내 의견을 확장하겠습니다.

\documentclass{article}
\usepackage{bm}
\usepackage{tikz}
\usetikzlibrary{arrows.meta,
                tikzmark}
\usepackage{lipsum}

\begin{document}
\[
\renewcommand\arraystretch{1.2}
\begin{array}{ |*{8}{c|}}
    \hline
\bm{A} & \bm{B} & \bm{C} & \bm{B\cap C}& \bm{A\cup (B\cap C)}
    & \bm{A\cup B} & \bm{A\cup C} & \bm{(A\cup B)\cap (A \cup C)} \\
    \hline
0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
0 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\
0 & 1 & 0 & 0 & 0 & 1 & 0 & 0 \\
0 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\
1 & 0 & 0 & 0 & 1 & 1 & 1 & 1 \\
1 & 0 & 1 & 0 & 1 & 1 & 1 & 1 \\
1 & 1 & 0 & 0 & 1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 & \tikzmarknode{a}{1} 
                  & 1 & 1 & \tikzmarknode{b}{1} \\
\hline
\end{array}
\vspace{4\baselineskip} % <--- space for arrow
\tikz[>=Straight Barb, overlay,remember picture]%
{
\draw[<->, semithick, shorten <=2ex, shorten >=2ex]
    (a) -- ++ (0,-1) -|
    node[align=center,font=\bfseries, pos=0.25, below]
        {Since these columns are identical, we conclude \\%
         that $\;\bm{A\cup(A\cap C)=(A\cup B)\cap (A\cup C)}$}
                        (b); 
}
\]
\lipsum[1]
\end{document}