段落の後に4つの表と2番目の段落が続くLaTeXドキュメントがあります。 4つのテーブルを2つの段落の間に表示したい read から、テーブル環境の開始後に[h]オプションを使用する必要があることを意味します(例:\begin{table}[h]
)。
これを使用すると、最初の2つのテーブルは期待どおり段落1の後に表示されますが、段落2が表示され、最後の2つのテーブルが次のページに表示されます。テーブルを正しい場所に表示するにはどうすればよいですか?
[h!]
を使用するなど、位置を修正するためにさまざまなことを試してみましたが、これは効果がないようです。テーブルの後に\clearpage
を使用すると、2番目の段落の前にテーブルが表示されるという望ましい効果がありますが、最後の2つのテーブルは独自のページに空白がたくさん残されます。段落は表の直後から始まります。
Paragraph 1...
\begin{table}[h]
table1...
\end{table}
\begin{table}[h]
table2...
\end{table}[h]
...
Paragraph 2...
さらにいくつかのグーグルを行った後、LaTeXがテーブルを再配置するのを防ぐことができるfloatパッケージに出会いました。
前文で:
\usepackage{float}
\restylefloat{table}
次に、テーブルごとにH
配置オプション(例:\begin{table}[H]
)を使用して、再配置されないようにします。
これは私のために働いた:
最初のusepackage
定義には次のものが含まれます。
\usepackage{placeins}
そして、追加の前後に:
\FloatBarrier
\begin{table}[h]
\begin{tabular}{llll}
....
\end{tabular}
\end{table}
\FloatBarrier
これにより、テキスト内の目的の場所に正確にテーブルが配置されます。
テキストと表とテキストが単一のページに収まらない場合はどうなりますか?この方法で組版を強制しようとすると、ページの実行が短すぎる可能性が非常に高くなります。つまり、テーブルはデフォルトでページを分割できないため、次のページにプッシュされ、前のページにギャップを残します。これは出版された本では決して見られないことに気付くでしょう。
フローティング動作は良いことです!ドキュメントが完成するまで、すべての表と図のデフォルト設定として[htbp]
を使用することをお勧めします。その場合にのみ、正確な配置を微調整することを検討してください。
追伸 FAQ ;を読んでください。ここでの他のほとんどの答えは、そこに与えられたアドバイスの部分的な組み合わせです。
Wikibooks からの簡単なソリューションを次に示します。
Placeinsパッケージには、コマンド\ FloatBarrierが用意されています。このコマンドを使用して、フロートがその上を移動しないようにすることができます。
すべてのテーブルの前後に\FloatBarrier
を配置しました。
2つのテーブルを隣り合わせにしたい場合は、次を使用できます:(float
パッケージをロードした状態)
\begin{table}[H]
\begin{minipage}{.5\textwidth}
%first table
\end{minipage}
\begin{minipage}{.5\textwidth}
%second table
\end{minipage}
\end{table}
それぞれにキャプションと番号があります。別のオプションはsubfigure
パッケージです。
テーブルは、次のパラメーターを使用して簡単に配置できます。
h
フロートhereを配置します。つまり、ソーステキスト内のほぼ同じ位置に配置します(ただし、正確な場所には配置しません)t
ページのtopの位置。b
ページのbottomの位置。p
float専用の特別なpageページを配置します。!
LaTeXが「適切な」フロート位置を決定するために使用する内部パラメーターをオーバーライドします。H
LATEXコードの正確にlocationにフロートを配置します。 floatパッケージが必要です。これはh!
と多少同等です。正確な位置決めのためにH
(またはh!
)を使用する場合は、プリアンブルでfloat
パッケージが正しく設定されていることを確認してください。
\usepackage{float}
\restylefloat{table}
テーブルを同じページ、正確な場所、または少なくともページの上部(ラテックスエンジンに最適な場所)に配置する場合は、h
およびt
パラメーターを使用します。このような:
\begin{table}[ht]
table content ...
\end{table}
ソース: Overleaf.com
これをプリアンブルに追加し、必要に応じて値を調整することができます。
%------------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に関心があるかもしれません。