LaTeX入門 / 最初の例 / 簡単な数式 (1) / 簡単な数式 (2) / 各種パッケージの利用 / レポート / HTML と LaTeX の比較 / 複雑な数式 / 図表 / 図表の配置 / 相互参照とリンク / 文献引用 / 索引作成 / LaTeX マクロの作成 / スライドの作り方(jsarticle 編) / 応用的な使い方 / 発展編


図表の配置

さて LaTeX で文書中に図表を配置するには,いろいろな状況があります。

  1. 文書中の,まさにその位置に配置したい
  2. 図表番号とキャプションをつけた上で,文書中のまさにその位置に配置したい
  3. 図表番号とキャプションが付いていればよく,配置場所はどこでもよい

LaTeX では図表を figure 環境や table 環境に入れて配置しますが,その出力位置は半自動的に決定されます。 これらはまとめてフロート環境 (float) とよばれます。 ここでは LaTeX でのフロート環境の扱われ方についても簡単に説明します。

1. 文書中の,まさにその位置に配置したい場合

図表を配置したい場所で \includegraphics 命令を使用します。

---- ソースファイル例 ----
ここで次の図を見てください。
\includegraphics{図のファイル.png}
図で赤く示されているのが…

実際にこれで図を取り込むには図のファイル形式に応じた適切な設定が必要となります。 このページの後のほうの説明を参照してください。 画像ファイルを用いるのではなく,図や表を直接 LaTeX で記述するには,picture 環境や tabular 環境を利用します。 picture 環境は簡単な図形を描画できますし,tabular 環境は表を作成できます。

---- ソースファイル例 ----
ここで次の図を見てください。
\begin{picture}
 ... 描画命令など
\end{picture}
図で赤く示されているのが...
---- ソースファイル例 ----
ここで次の表を見てください。
\begin{tabular}{|r||c|l}
 ... 表の要素など
\end{tabular}
図で赤く示されているのが...

2. 図表番号とキャプションをつけた上で,文書中のまさにその位置に配置したい

LaTeX はデフォルトでは対応していません。 これをしたい場合はちょっとしたテクニックが必要です。→ TeX フォーラムなどで検索してみてください。

3. 図表番号とキャプションが付いていればよく,配置場所はどこでもよい

figure 環境や table 環境を利用します。 キャプションを“図**”としたければ figure 環境を,“表**”としたければ table 環境を使います。 LaTeX は,環境の中身が実際に図なのか表なのかは判断しません。

---- ソースファイル例 ----
\begin{figure}
  \includegraphics{図のファイル.png}
  \caption{度数分布図}
  \label{figA}
\end{figure}
ここで図\ref{figA}を見てください。
図で赤く示されているのが…

figure 環境で図に番号が自動的に付けられて,キャプションと一緒に「図3:度数分布図」のように図に添えられます。 この図番号は \label と \ref を用いて参照されて,本文中で「ここで図3を見てください」のようになるわけです。 番号が付いていますので,図そのものは紙面のどこに配置されても(次のページに飛んでいってしまっても)本文の意味は通ります。 LaTeX は,改段落や改ページの具合を見ながら適切な位置を選んで配置します。 figure 環境の中で図を取り込んでいる部分については1番目の状況と同じです。

表組みを画像ファイルとして用意したものを取り込みたい場合は,図の取り込みと同様に \includegraphics 命令を使います。 ただキャプションを“表**”とするために figure 環境に代えて table 環境を使用すればよいわけです。 画像ファイルとしてではなく,直接 LaTeX で表を記述する場合は,table 環境の中で tabular 環境を用いればよいでしょう。

図と文字の重ね打ち

図中に LaTeX で組んだ文字を入れる方法はいろいろあります。 ここでは overpic.sty による方法を説明します。 以下の例で使用する pict2e パッケージにも dvipdfmx オプションを忘れずに付けてください。

\documentclass{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage[abs]{overpic} % この行を追加
\usepackage[dvipdfmx]{pict2e}  % 後で矢印をきれいに出すため。なければ不要
\begin{document}

% \includegraphics[width=5cm,pagebox=cropbox,clip]{apple.pdf} を次のように書き換える
\begin{overpic}[width=5cm,pagebox=cropbox,clip,grid]{apple.pdf}
\end{overpic}

\end{document}

こうすると,図の上にグラフ用紙がオーバーレイされます。 これを見ながら,挿入したい文字と矢印を座標で指定します。 文法は picture 環境と同じです。 pict2e.sty を使えば picture 環境がさらに強力になるのでお薦めします。

\begin{overpic}[width=5cm,clip,grid]{apple.pdf}
  \linethickness{3pt}  % pict2e.styがなければ\thicklinesにする
  \put(150,80){\vector(-1,0){25}}
  \put(155,75){\Huge\sffamily Byte!}
\end{overpic}

多少試行錯誤が必要ですが,これでよければ grid を外します。

overpic.sty, pict2e.sty は TeX Live, W32TeX に含まれています。

2色刷り

最近の本は黒とあと1色の2色刷りにすることが多くなりました。 プロセスカラーは CMYK で行いますが,このような2色刷りには,黒を K,もう一つの色(特色,スポットカラー)を例えば C に当てておいて,印刷時に C の色を指定します。 先ほど図表で説明したとおり,色を指定する color パッケージもドライバ依存ですので dvipdfmx オプションを付けました。

例えば上の例で図中の文字と矢印だけ特色にするには,次のようにします。

\documentclass{jsarticle}
\usepackage[dvipdfmx]{graphicx,color}
\usepackage[abs]{overpic}
\usepackage[dvipdfmx]{pict2e}
\definecolor{spot}{cmyk}{1,0,0,0}
\begin{document}

\begin{overpic}[width=5cm,pagebox=cropbox,clip]{apple.pdf}
  \color{spot}\linethickness{3pt}
  \put(150,80){\vector(-1,0){25}}
  \put(155,75){\Huge\sffamily Byte!}
\end{overpic}

\end{document}

この場合,文字と矢印の色がシアンになります。


Last-modified: 2017-10-17 (火) 15:56:41 (489d)