[latex] LaTeX 테이블 포지셔닝

단락, 4 개의 테이블, 두 번째 단락이 포함 된 LaTeX 문서가 있습니다. 나는 4 개 테이블이 내가 한 일에서 두 개의 단락 사이에 표시 할 읽을 수단 내가 테이블 환경 (예를 들어, 시작 후 [H] 옵션을 사용한다 \begin{table}[h]).

이를 사용하면 예상대로 첫 번째 두 테이블이 단락 1 뒤에 나타나지만 단락 2는 다음 페이지에 나타나는 마지막 두 테이블과 함께 표시됩니다. 테이블이 올바른 위치에 나타나도록하려면 어떻게해야합니까?

나는 사용과 같은 위치를 수정하기 위해 다양한 것을 시도 [h!]했지만 이것은 아무런 효과가없는 것 같습니다. \clearpage테이블 뒤를 사용 하면 두 번째 단락 앞에 테이블이 나타나도록하는 원하는 효과가 있지만 두 번째 단락이 바로 뒤에 시작되도록하려면 공백이 많은 페이지에 마지막 두 테이블을 남겨 둡니다. 테이블.

Paragraph 1...

\begin{table}[h]
    table1...
\end{table}

\begin{table}[h]
   table2...
\end{table}[h]
...

Paragraph 2...



답변

더 많은 인터넷 검색을 한 후에 나는 부유물을 발견했습니다. LaTeX가 테이블의 위치를 ​​변경하는 것을 방지 할 수 패키지를 .

서문에서 :

\usepackage{float}
\restylefloat{table}

그런 다음 각 테이블에 대해 H배치 옵션 (예 :)을 사용하여 위치 \begin{table}[H]가 변경되지 않도록 할 수 있습니다.


답변

이것은 나를 위해 일했습니다.

usepackage정의 시작 부분 에는 다음이 포함됩니다.

\usepackage{placeins}

추가 전후 :

\FloatBarrier
\begin{table}[h]
    \begin{tabular}{llll}
      ....
    \end{tabular}
\end{table}
\FloatBarrier

이렇게하면 텍스트에서 원하는 위치에 테이블이 정확하게 배치됩니다.


답변

테이블 포지셔닝

사용 가능한 매개 변수

다음 매개 변수를 사용하여 테이블을 쉽게 배치 할 수 있습니다.

  • h여기 에 플로트를 배치 합니다 . 즉, 소스 텍스트에서 발생하는 것과 거의 같은 지점에 배치합니다 (하지만 정확히 그 지점은 아님).
  • t페이지 상단 에 위치 합니다.
  • b페이지 하단 에 위치 합니다.
  • p특별한 착용 페이지 에만 수레.
  • ! LaTeX가 “좋은”부동 위치를 결정하는 데 사용하는 내부 매개 변수를 재정의합니다.
  • HLATEX 코드의 정확한 위치 에 플로트를 배치 합니다. float 패키지가 필요합니다. 이것은 h!.

정확한 위치 지정을 위해 H(또는 h!)을 사용 float하려면 서문에서 패키지를 올바르게 설정 했는지 확인하십시오 .

\usepackage{float}
\restylefloat{table}

테이블을 동일한 페이지, 정확한 위치 또는 최소한 페이지 상단 (라텍스 엔진에 가장 적합한 위치)에 배치하려면 다음 ht같이 매개 변수를 사용하십시오 .

\begin{table}[ht]
    table content ...
\end{table}

출처 : Overleaf.com


답변

텍스트와 표, 텍스트가 한 페이지에 맞지 않으면 어떻게됩니까? 이런 식으로 조판을 강요하면 너무 짧은 페이지로 끝날 가능성이 큽니다. 즉, 테이블은 기본적으로 페이지를 넘을 수 없기 때문에 다음 페이지로 밀려 나고 이전 페이지에 공백을 남깁니다. 출판 된 책에서는 이것을 결코 볼 수 없다는 것을 알게 될 것입니다.

떠 다니는 행동은 좋은 것입니다! [htbp]문서가 완성 될 때까지 모든 표와 그림에 대한 기본 설정으로 사용 하는 것이 좋습니다 . 그런 다음 정확한 배치를 미세 조정하는 것에 대해 생각해야합니다.

PS FAQ 읽기 ; 여기에있는 대부분의 다른 답변은 거기에 제공된 조언의 부분 조합입니다.


답변

다음은 Wikibooks 의 쉬운 해결책입니다 .

placeins 패키지는 \ FloatBarrier 명령을 제공합니다.이 명령은 플로트가 위로 이동하는 것을 방지하는 데 사용할 수 있습니다.

나는 \FloatBarrier모든 테이블 앞뒤에 놓았습니다 .


답변

두 개의 테이블을 나란히 놓고 싶다면 다음을 사용할 수 있습니다. ( float패키지가로드 된 상태에서)

\begin{table}[H]
 \begin{minipage}{.5\textwidth}
  %first table
 \end{minipage}
 \begin{minipage}{.5\textwidth}
  %second table
 \end{minipage}
\end{table}

각각 고유 한 캡션과 번호가 있습니다. 또 다른 옵션은 subfigure패키지입니다.


답변

이것을 서문에 추가하고 필요에 따라 값을 조정할 수 있습니다.

 %------------begin Float Adjustment
%two column float page must be 90% full
\renewcommand\dblfloatpagefraction{.90}
%two column top float can cover up to 80% of page
\renewcommand\dbltopfraction{.80}
%float page must be 90% full
\renewcommand\floatpagefraction{.90}
%top float can cover up to 80% of page
\renewcommand\topfraction{.80}
%bottom float can cover up to 80% of page
\renewcommand\bottomfraction{.80}
%at least 10% of a normal page must contain text
\renewcommand\textfraction{.1}
%separation between floats and text
\setlength\dbltextfloatsep{9pt plus 5pt minus 3pt }
%separation between two column floats and text
\setlength\textfloatsep{4pt plus 2pt minus 1.5pt}

특히, \ floatpagefraction이 흥미로울 수 있습니다.