열 사이에 수직선 추가

열 사이에 수직선 추가

논문 부록에 대한 테이블을 작성 중인데 특정 테이블에 다음과 같은 문제가 있습니다.

  • 내 테이블은 다음 페이지에서 시작됩니다. 테이블을 여러 페이지로 분할하려면 무엇을 변경해야 합니까?
  • (1열과 2열에 제시된 정보가 3열과 4열에 제시된 정보와 동일하기 때문에) 두 번째와 세 번째 열 사이에 수직선을 추가하고 싶습니다.

제가 사용한 코드와 그 결과를 보여드리겠습니다(문서의 다른 테이블에 대해 이미 newcolumntypes를 사용했음을 확인하세요). 표는 부록 B 다음에 시작되어야 합니다.

\usepackage{array,ragged2e}
\newcolumntype{C}{>{\Centering\hspace{0pt}}p{0.1\textwidth}}
\usepackage[output-decimal-marker={,}]{siunitx}

\usepackage{booktabs, makecell, tabularx}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}

\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}


\section{Suppliers´ production capabilities}
\begin{table}[ht]
\resizebox{\textwidth}{!}{%
\begin{tabular}{lllll}
\toprule
\multicolumn{1}{c}{\textbf{Facility Name}} & \multicolumn{1}{c}{\textbf{Product}} & \multicolumn{1}{c}{\textbf{Facility Name}} & \multicolumn{1}{c}{\textbf{Product}} \\
\midrule
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords & Texttexttexttexttexttexttex & Wordswordswordswordswordswords       \\
Texttexttexttexttexttextt & Wordswordswordswordswordswords        \\
 \bottomrule                                  
\end{tabular}%
}
\caption{Supplier facilities´ production capabilities }
\label{tab:my-table}
\end{table}

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

이 문제를 해결하는 데 도움을 주시면 정말 감사하겠습니다!

답변1

여기에 longtable기반 솔루션이 있습니다. 네 개의 열 모두 자동 줄 바꿈을 허용합니다. 열 너비는 동일하며 사용 가능한 최대 너비를 차지하도록 계산됩니다.

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

\documentclass{article}
\usepackage[hmargin=1in]{geometry} % set page parameters suitably
\usepackage{longtable,array,ragged2e}
\newlength\mylen
\setlength\mylen{\dimexpr0.25\textwidth-1.5\tabcolsep-0.25\arrayrulewidth\relax}
\newcolumntype{Z}{>{\RaggedRight}p{\mylen}}
\begin{document}

\section{Suppliers' production capabilities}

\setlength{\extrarowheight}{2pt}
\begin{longtable}{@{} ZZ | ZZ @{}}

%%% headers and footers:

\caption{Supplier facilities' production capabilities }
\label{tab:my-table}\\
\hline
\textbf{Facility Name} & \textbf{Product} & 
\textbf{Facility Name} & \textbf{Product} \\
\hline
\endfirsthead

\multicolumn{4}{@{}l}{Table \thetable, cont'd}\\[1ex]
\hline
\textbf{Facility Name} & \textbf{Product} & 
\textbf{Facility Name} & \textbf{Product} \\
\hline
\endhead

\hline
\multicolumn{4}{r@{}}{\footnotesize cont'd on following page}\\
\endfoot

\hline
\endlastfoot

%%% Body of table

Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
Texttext texttextt exttextt & Wordswordswords wordswordswords & Texttext texttextt exttexttex exttexttex & Wordswordswords wordswordswords \\
\end{longtable}
\end{document}

답변2

사용 방법은 다음과 같습니다 xltabular. 전체 너비를 선언한다는 점을 제외하면 longtable과 동일한 구문입니다. 특히, 긴 테이블에서는 환경을 사용하지 않고 table(플로트가 아님) 캡션이 테이블에 통합됩니다.첫머리부분.

    \documentclass{article}
    \usepackage{array,ragged2e}
\newcolumntype{C}{>{\Centering\hspace{0pt}}p{0.1\textwidth}}
\usepackage[output-decimal-marker={,}]{siunitx}
\usepackage{lipsum}
\usepackage{booktabs, makecell, xltabular}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}

\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}


\begin{document}

\section{Suppliers´ production capabilities}
\lipsum[1-3]

\begin{xltabular}{\textwidth}{*{4}{L}}
\caption{Supplier facilities´ production capabilities }
\label{tab:my-table} \\
\toprule
\multicolumn{1}{c}{\textbf{Facility Name}} & \multicolumn{1}{c}{\textbf{Product}} & \multicolumn{1}{c}{\textbf{Facility Name}} & \multicolumn{1}{c}{\textbf{Product}} \\
\midrule
\endfirsthead
{\footnotesize (Continued)}\\
\toprule
\multicolumn{1}{c}{\textbf{Facility Name}} & \multicolumn{1}{c}{\textbf{Product}} & \multicolumn{1}{c}{\textbf{Facility Name}} & \multicolumn{1}{c}{\textbf{Product}} \\
\midrule
\endhead
\midrule
\multicolumn{4}{r}{\footnotesize (to be continued)}
\endfoot
\bottomrule
\endlastfoot
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words & Text text text text text text tex & Words words words words words words \\ \addlinespace
Text text text text text textt & Words words words words words words \
\end{xltabular}%

\end{document} 

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

관련 정보