테이블의 대각선이 상자에서 벗어났습니다.

테이블의 대각선이 상자에서 벗어났습니다.

표의 대각선이 상자 밖으로 나오는 이유와 해결 방법은 무엇입니까?

여기에 이미지 설명을 입력하세요

\documentclass[a4paper,twoside,12pt]{book}
\usepackage{placeins}
\usepackage{slashbox,pict2e}
\usepackage{amsmath,amssymb,mathptmx}
\begin{document}
\FloatBarrier
\begin{table}[h!]
    \centering
    \caption{Tabel $Q\cap M'$}
    \begin{tabular}{|@{}c|c|c|c|c|}
        \hline
        \backslashbox{\tabular{@{}l@{}}$Q\in\mathfrak{p}$\endtabular}{$M'\in P(A)$}
        & $\varnothing$& $\{1\}$& $\{2\}$&$\{1,2\}$\\
        \hline
        $\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$\\
        \hline
        $\{1\}$&$\varnothing$&$\{1\}$&$\varnothing$&$\{1\}$\\
        \hline\hline
        $\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$\\
        \hline
        $\{2\}$&$\varnothing$&$\varnothing$&$\{2\}$&$\{2\}$\\
        \hline
    \end{tabular}
    \label{tabelksmanna}
\end{table}
\FloatBarrier   
\end{document}

답변1

우선, 나는 이 slashbox패키지가 더 이상 사용되지 않으며 더 이상 TeXLive의 일부가 아니라고 생각합니다. 대신 패키지를 사용하세요 diagbox.

@{}둘째, 환경 인수에서 입자를 생략하여 발생한 문제를 해결할 수 있습니다 tabular. 즉, 교체

\begin{tabular}{|@{}c|c|c|c|c|}

~와 함께

\begin{tabular}{|c|c|c|c|c|}

보다 일반적으로는 정보를 표 형식으로 표시하는 방식을 다시 고려해 볼 수 있습니다.

  • 제가 당신의 테이블을 볼 때, 제가 가장 먼저 보는 것은 수많은 수직선과 수평선입니다. 무엇이 무엇인지 발견하기 시작하려면 적지 않은 노력이 필요합니다.내부에그 모든 작은 (감옥) 감방.

  • 표 형식의 자료를 제시하기 위해 좀 더 개방적이고 매력적인 "모양"을 사용하는 것에 대해 생각해 보십시오. 아래 예에서와 같이 모든 수직선을 생략하고 간격이 적절한 몇 개의 수평선만 유지하는 것으로 시작할 수 있습니다. (그런데 세 번째 데이터 행은 첫 번째 데이터 행의 반복인가요? 그렇다면 세 번째 행은 중복되어 생략될 수 있겠죠?)

나는 독자들이 여러분의 노력에 감사할 것이라고 확신합니다. 그리고 실제로 그 내용을 살펴보는 것으로 보상을 받을 것입니다.내용물테이블의. 당신이 제시하는 정보를 독자들이 흡수하도록 하는 것은 성공적인 논문 작성의 일부로 보아야 합니다. 그렇죠? :-)

여기에 이미지 설명을 입력하세요

\documentclass[a4paper,twoside,12pt]{book}
\usepackage{diagbox,amsmath,amssymb}
\usepackage{newtxtext,newtxmath} % mathptmx is very old
\usepackage{booktabs} % new
\usepackage[skip=0.333\baselineskip]{caption} % optional

\begin{document}
\begin{table}[h!]
\centering

    \caption{Tabel $Q\cap M'$}
    \label{tabelksmanna}
    \begin{tabular}{|c|c|c|c|c|}
        \hline
        \backslashbox{\tabular{@{}l@{}}$Q\in\mathfrak{p}$\endtabular}{$M'\in P(A)$}
        & $\varnothing$& $\{1\}$& $\{2\}$&$\{1,2\}$\\
        \hline
        $\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$\\
        \hline
        $\{1\}$&$\varnothing$&$\{1\}$&$\varnothing$&$\{1\}$\\
        \hline\hline
        $\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$\\
        \hline
        $\{2\}$&$\varnothing$&$\varnothing$&$\{2\}$&$\{2\}$\\
        \hline
    \end{tabular}

    \bigskip
    \caption{Same material, rearranged}
    %% Use an 'array' env. since all contents are math-y
    $\begin{array}{@{}lcccc@{}}
        \toprule
        Q\in\mathfrak{p} & \multicolumn{4}{c@{}}{M'\in P(A)}\\
        \cmidrule(l){2-5}
        & \varnothing & \{1\} & \{2\} &\{1,2\} \\
        \midrule
        \varnothing&\varnothing&\varnothing&\varnothing&\varnothing\\
        \{1\} & \varnothing & \{1\} & \varnothing & \{1\} \\
        \addlinespace
        \varnothing&\varnothing&\varnothing&\varnothing&\varnothing\\
        \{2\}&\varnothing&\varnothing&\{2\}&\{2\}\\
        \bottomrule
    \end{array}$

\end{table}

\end{document}

답변2

{NiceTabular}nicematrix자체 내장 명령이 있습니다 \diagbox.

\documentclass[a4paper,twoside,12pt]{book}
\usepackage{amssymb}
\usepackage{newtxtext,newtxmath}
\usepackage[skip=0.333\baselineskip]{caption}
\usepackage{nicematrix}

\begin{document}
\begin{table}[h!]
\centering

\caption{Tabel $Q\cap M'$}
\label{tabelksmanna}
\begin{NiceTabular}{w{c}{22mm}cccc}[vlines]
    \Hline
    \rule{0pt}{9mm}
    \diagbox{\footnotesize $Q\in\mathfrak{p}$}{\footnotesize $M'\in P(A)$}
    & $\varnothing$& $\{1\}$& $\{2\}$&$\{1,2\}$\\
    \Hline
    $\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$\\
    \Hline
    $\{1\}$&$\varnothing$&$\{1\}$&$\varnothing$&$\{1\}$\\
    \Hline\Hline
    $\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$&$\varnothing$\\
    \Hline
    $\{2\}$&$\varnothing$&$\varnothing$&$\{2\}$&$\{2\}$\\
    \Hline
\end{NiceTabular}
\end{table}

\end{document}

위 코드의 출력

관련 정보