테이블이 너무 넓어서 회전시키고 싶어요. 강제로 사용해야 \documentclass[11pt,a4paper]{article}
하므로 변경합니다.해결책이 아니다. 많은 패키지가 전체 페이지를 회전하지만 테이블을 회전하고 싶지는 않습니다.
꼭 사용해야 할 테이블 디자인 샘플이 있습니다. 내 첫 번째 테이블인 내 tex 코드에서.
두 번째 스니펫은 테이블을 회전하는 방법입니다. 그러나 테이블에 필수 캡션이 누락되었습니다.
세 번째 스니펫은 제가 실제로 원하는 것이지만 LaTeX Error: Not in outer par mode
. 비슷한 질문을 찾았습니다캡션이 포함된 테이블 회전: "외부 파 모드가 아닙니다. \begin{table}[h]"하지만 그 대답은 sidewaystable에 대한 솔루션을 제공했고 제 경우에는 회전된 테이블이 자체적으로 전체 페이지를 차지하기 때문에 정말 보기 흉했습니다.
\documentclass[11pt,a4paper]{article}
\usepackage[graphicx]{realboxes}
\usepackage{verbatim}
\begin{document}
\begin{table}[htb]
\begin{center}
\begin{tabular}{|l|c|c|c|c|c||c|c|c|c|c||c|c|c|c|c|}
\hline
\bf Some text & \rotatebox{90}{column 1 } & \rotatebox{90}{column 2} & \rotatebox{90}{column 3 } & \rotatebox{90}{column 4 } & \rotatebox{90}{column 5 } & \rotatebox{90}{column 6 } & \rotatebox{90}{column 7} & \rotatebox{90}{column 8 } & \rotatebox{90}{column 9 } & \rotatebox{90}{column 10 } & \rotatebox{90}{column 11 } & \rotatebox{90}{column 12} & \rotatebox{90}{column 13 } & \rotatebox{90}{column 14 } & \rotatebox{90}{column 15 }\\
\hline \hline
first row lorem ipsum & 692 & 535 & 85 & 48 & 24 & 692 & 535 & 85 & 48 & 24 & 2 & 3 & 3 & 4 & 5 \\
\hline
\end{tabular}
\end{center}
\caption{My caption lorem ipsum}\label{tab_aaa}
\end{table}
%rotated
\rotatebox{90}{
\begin{tabular}{|l|c|c|c|c|c||c|c|c|c|c||c|c|c|c|c|}
\hline
\bf Some text & \rotatebox{90}{column 1 } & \rotatebox{90}{column 2} & \rotatebox{90}{column 3 } & \rotatebox{90}{column 4 } & \rotatebox{90}{column 5 } & \rotatebox{90}{column 6 } & \rotatebox{90}{column 7} & \rotatebox{90}{column 8 } & \rotatebox{90}{column 9 } & \rotatebox{90}{column 10 } & \rotatebox{90}{column 11 } & \rotatebox{90}{column 12} & \rotatebox{90}{column 13 } & \rotatebox{90}{column 14 } & \rotatebox{90}{column 15 }\\
\hline \hline
first row lorem ipsum & 692 & 535 & 85 & 48 & 24 & 692 & 535 & 85 & 48 & 24 & 2 & 3 & 3 & 4 & 5 \\
\hline
\end{tabular}
}
\begin{comment}
%% what i want
\rotatebox{90}{
\begin{table}[htb]
\begin{center}
\begin{tabular}{|l|c|c|c|c|c||c|c|c|c|c||c|c|c|c|c|}
\hline
\bf Some text & \rotatebox{90}{column 1 } & \rotatebox{90}{column 2} & \rotatebox{90}{column 3 } & \rotatebox{90}{column 4 } & \rotatebox{90}{column 5 } & \rotatebox{90}{column 6 } & \rotatebox{90}{column 7} & \rotatebox{90}{column 8 } & \rotatebox{90}{column 9 } & \rotatebox{90}{column 10 } & \rotatebox{90}{column 11 } & \rotatebox{90}{column 12} & \rotatebox{90}{column 13 } & \rotatebox{90}{column 14 } & \rotatebox{90}{column 15 }\\
\hline \hline
first row lorem ipsum & 692 & 535 & 85 & 48 & 24 & 692 & 535 & 85 & 48 & 24 & 2 & 3 & 3 & 4 & 5 \\
\hline
\end{tabular}
\end{center}
\caption{My caption lorem ipsum}\label{tab_b}
\end{table}
}
\end{comment}
\end{document}
두 번째 스니펫에 캡션을 추가하려면 어떻게 해야 하나요?
답변1
테이블이 상당히 크고 어쨌든 한 페이지를 차지하므로 sidewaystable이 아마도 가장 좋은 솔루션일 것입니다. 그러나 표 형식과 캡션을 미니페이지나 가변 너비 상자에 넣고 이를 회전할 수도 있습니다.
\documentclass[11pt,a4paper]{article}
\usepackage[graphicx]{realboxes}
\usepackage{varwidth}
\begin{document}
%% what i want
\begin{table}[htb]
\centering
\rotatebox{90}{%
\begin{varwidth}{\textheight}
\begin{tabular}{|l|c|c|c|c|c||c|c|c|c|c||c|c|c|c|c|}
\hline
\bfseries Some text & \rotatebox{90}{column 1 } & \rotatebox{90}{column 2} & \rotatebox{90}{column 3 } & \rotatebox{90}{column 4 } & \rotatebox{90}{column 5 } & \rotatebox{90}{column 6 } & \rotatebox{90}{column 7} & \rotatebox{90}{column 8 } & \rotatebox{90}{column 9 } & \rotatebox{90}{column 10 } & \rotatebox{90}{column 11 } & \rotatebox{90}{column 12} & \rotatebox{90}{column 13 } & \rotatebox{90}{column 14 } & \rotatebox{90}{column 15 }\\
\hline \hline
first row lorem ipsum & 692 & 535 & 85 & 48 & 24 & 692 & 535 & 85 & 48 & 24 & 2 & 3 & 3 & 4 & 5 \\ \hline
\end{tabular}
\caption{My caption lorem ipsum}\label{tab_b}
\end{varwidth}}
\end{table}
For the table see \ref{tab_b}
\end{document}
주의: \bf를 사용하지 말고 대신 \bfseries를 사용하세요.
답변2
\documentclass[11pt,a4paper]{article}
\usepackage{hvfloat}
\def\RB#1{\rotatebox{90}{#1}}
\begin{document}
\hvFloat[%
floatPos=!htb,
capWidth=h,% of \columnwidth
capPos=r,
objectAngle=90,
capAngle=90,
objectPos=l % l c r
]{table}{%
\begin{tabular}{|l|c|c|c|c|c||c|c|c|c|c||c|c|c|c|c|}\hline
\bf Some text & \RB{column 1 } & \RB{column 2} & \RB{column 3 } & \RB{column 4 } & \RB{column 5 } & \RB{column 6 } & \RB{column 7} & \RB{column 8 } & \RB{column 9 } & \RB{column 10 } & \RB{column 11 } & \RB{column 12} & \RB{column 13 } & \RB{column 14 } & \RB{column 15 }\\
\hline \hline
first row lorem ipsum & 692 & 535 & 85 & 48 & 24 & 692 & 535 & 85 & 48 & 24 & 2 & 3 & 3 & 4 & 5 \\
\hline
\end{tabular}
}%
[Centered Caption beside Object] % TOC entry
{Caption vertically centered right beside the float with a caption
width of \texttt{0.5\textbackslash columnwidth} and \texttt{%
floatcapsep=5pt} (the default)}
{fig:2}% label
\end{document}
답변3
패키지 를 사용하는 것이 가장 쉽다는 것을 알았습니다 roatfloat
. sidewaystable
이 예에서는 그렇지 않지만 이는 또한 사용됩니다 .
\documentclass[11pt,a4paper]{article}
\usepackage{rotfloat}
\usepackage{varwidth}
\begin{document}
For the table see \ref{tab_a}
\begin{table}[H]
\centering
\rotatebox{90}{%
\begin{varwidth}{\textheight}
\begin{tabular}{|l|c|c|c|c|c||c|c|c|c|c||c|c|c|c|c|}
\hline
\bfseries Some text & \rotatebox{90}{column 1 } & \rotatebox{90}{column 2} & \rotatebox{90}{column 3 } & \rotatebox{90}{column 4 } & \rotatebox{90}{column 5 } & \rotatebox{90}{column 6 } & \rotatebox{90}{column 7} & \rotatebox{90}{column 8 } & \rotatebox{90}{column 9 } & \rotatebox{90}{column 10 } & \rotatebox{90}{column 11 } & \rotatebox{90}{column 12} & \rotatebox{90}{column 13 } & \rotatebox{90}{column 14 } & \rotatebox{90}{column 15 }\\
\hline \hline
first row lorem ipsum & 692 & 535 & 85 & 48 & 24 & 692 & 535 & 85 & 48 & 24 & 2 & 3 & 3 & 4 & 5 \\ \hline
\end{tabular}
\caption{My caption lorem ipsum}\label{tab_a}
\end{varwidth}}
\end{table}
Another reference see \ref{tab_a}
\end{document}