図の挿入 メモ

はじめに

Web検索で見つかる様々な \(\LaTeX\) に関するページでは, ベクター画像の例として .eps を使っているページが多い.
しかししこれは古い情報で,最近ではベクター画像なら .pdf の方が良いらしい.

PDF を使うなら,A4 用紙の大きさだと \includegraphics での余白の切り取りが面倒なので, pdfcrop コマンドを使って事前に余白を整えておいた方が良い.

プリアンブル

ドライバが dvipdfmx の場合は,

\usepackage[dvipdfmx]{graphicx}

のように dvipdfmx を書く.

またキャプションのインデント(字下げ)をするには下記の通り.

\usepackage{caption}
\captionsetup{format=hang}

ただし,sty ファイルの中で図表の書式が定まっているときは,書式が変わってしまう可能性がある.
前後で確認して問題がないか確認して使う.

図の挿入の基本

単純に1枚だけ挿入する時は,

\begin{figure}[tb]
    \centering
    \includegraphics[keepaspectratio, scale=0.5]{filename.pdf}
    \caption{An example.}
    \label{fig:hogehoge}
\end{figure}

以下にそれぞれの行,命令が示しているものについて説明する.

\begin{figure}

\begin{figure}[htbp]
\end{figure}

のhtbpは,here, top, bottom, page を表し,挿入する位置を指定する.
大抵の論文ではページの真ん中に図を置くことは書式として受け入れられず,ページの上端または下端,単独ページで図の挿入になるはずなので,h は使わない.
レポートなら h もあり.

\begin{figure}[!h]

のように ! をつけることで若干無理を通してでも h になる.

\centering

普通は \begin{figure} で確保した領域の上端左寄せで図が入るので,図を中央寄せで表示する.

\includegraphics{filename.pdf}

オプションの keepaspectratio は名の通りアスペクト比固定.scale は元画像ファイルに対する縮小比.
他のオプションもあるがここでは省略.

\caption{foobar}

表示されるキャプション.位置の調整をしたい場合は \hspace,\vspace を駆使する.

\label{fig:hogehoge}

\label{fig:hoge}

と記述すれば,本文中で

\ref{fig:hoge}

と書くことにより図表番号が自動的に反映される.本文中での表示フォーマットは cls ファイル次第.
「fig:」はなくとも良いが,label は表や数式でも参照のために使われるので図のラベルとわかる何かはつけておきたい.

2段構成のページにぶち抜きで挿入

論文の書式が2段構成で,図だけ1段(margin を除いたページ幅いっぱい)で使う場合は,\begin{figure*} のように,*をつける.

\begin{figure*}[!t]
    \centering
    \includegraphics[keepaspectratio, scale=0.5]{filename.pdf}
    \caption{An example.}
    \label{fig:hogehoge}
\end{figure*}

これを実行すると,この図が最後のページに現れやすいので

\begin{figure*}[!t]

の!tで強めに入れた方が整う.

同じ枠内に複数枚

figure の中で minipage を使って,画像一つ分の領域を確保してから includegraphics を使う.
\linewidth, \textwidth などを使って領域の幅を調整する.
subcaption を使う時は,大抵プリアンブルに次のように書くとよい.

\usepackage[subrefformat=parens]{subcaption}

subcaption パッケージが使用しているスタイルと競合する場合は諦めて, (a)や(b)などの文字を直接打ち込んで挿入する. 以下は1行2列で2つの画像を挿入する例.

% --- Figure ------------------------------
\begin{figure*}[!t]

  % -- (a) --
  \begin{minipage}{0.5\linewidth}
    \centering
    \includegraphics[keepaspectratio, scale=0.6]{fig/a.pdf} % 図の大きさに合わせてscaleを調整
    \subcaption{1つめ}
  \end{minipage}
  % ---------

  % \vspace と \hspace を駆使して間隔を調節

  % -- (b) --
  \begin{minipage}{0.5\linewidth}
    \centering
    \includegraphics[keepaspectratio, scale=0.6]{fig/b.pdf}
    \subcaption{1つめ}
  \end{minipage}
  % ---------

  %% main caption
  \caption{Hogehoge}
  \label{fig:1}  
\end{figure*}
% -----------------------------------------

\minipage を応用すれば任意の配置で図を置くことができる.
\subcaption{} は minipage の中に必ず入れないといけない点に注意.
入れなかった場合,普通の caption が図Xでなくて (c) 等になってしまう.

右/左寄せで行内に埋め込み

論文では使わないが,某申請書やレポート形式では,ページの上端下端以外で図を入れることもある.

\usepackage{wrapfig}

をプリアンブルに書いた上で,

% --- Figure ------------------------------
\begin{wrapfigure}[11]{r}{70mm} % [埋め込む行数]{左(l)/右(r)寄せ}{埋め込む幅}
  \centering
  \vspace{-3mm}
  \includegraphics[width=70mm,clip]{something.png}
  \vspace{-3mm}
  \caption{なにかの図} \label{fig:something}
\end{wrapfigure}
% -----------------------------------------

とか.


Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes
Last-modified: 2019-10-10 (Thu) 05:42:59 (5d)