1.Research Crack/LaTeX

Top > 1.Research Crack > LaTeX

LaTeX Tips - 論文書くために -

「文章を規定の範囲内で収めるためのTips.」はオススメ.

お役立ちサイト

LaTeXコマンドシート
簡潔で忘れてしまったコマンドを探すのに使いやすい.LaTeXを使用する時に一緒にこのサイトを開いている.

TeX Wiki 学会スタイル等
学術分野で使えるスタイルファイルをおいてあるところのリンク集.

APAスタイルファイル

American Psychological Associationが作成する文書形式.ひろくに渡り採用されている.
apa.sty by CTAN
apacite.inc,apacite.bst by CTAN

それぞれのページ冒頭にある

You can get this entire directory bundled as *.zip.

をクリックしてダウンロード.
apaciteのスタイルファイルはAPA形式の文献リスト作成に必要

BiBTeXに関するいくつかの知識.

*bst
文献スタイルファイル.文献整形の様式を規定する.
*bbl
文献リストファイル.BibTeXが作成する中間ファイル.本文中に\bibliographの引数として列挙する.参照する文献ファイルコンパイルできない時に,この中間ファイルを削除して再度コンパイルしたらうまくいくことがあった.

あらたなスタイルファイルを使う.

Texスタイルファイルならばダウンロードした*.styを

..\texmf\tex\latex\misc

のディレクトリに入れておく.Bibtexスタイルファイルならばダウンロード*.bstを

..\texmf\bibtex\bst\misc

のディレクトリに入れておく.

普通*.styではなく、*.insと*.dtxの組で置かれていので,*.insから*.styを作成する.Windowsの場合,*.insのあるディレクトリで,

latex *.ins

と入力する.

ちなみに,*.dtxのあるディレクトリで,

latex *.ins

と入力すると,dtxファイルからstyファイルの解説文書が作成される.


cf.styファイルがないというメッセージが出たとき,styファイルを最新のものにしたいときby Kumazawa Yoshiki

分割ファイルを読み込む

include{} 改ページあり
input{} 改ページなし

プリアンブル,マクロを書く上での注意

プリアンブル preambleとして\documentclass{}\begin{document}の間に各種設定を書きます.

  • マクロの定義の仕方
    LaTeX:\newcommand{制御綴}[引数の個数][標準オプション]{定義}
    Tex:\def<制御綴><引数パラメータ>{定義}
    LaTeXの方法はTeXよりも重複定義の防止策が施されていて,安全に用いられる.TeXの書き方は重複定義の防止策は施されていないものの,簡単な表現で融通が利く.

ex.
\newcommand{\argmin}{\mathop{\rm argmin}\limits} %数式 argminの作成

  • ちなみに,すでに定義されているのをパラメータなどを変更して再定義する場合はこちら.
    \renewcommand{\headrulewidth}{0.4pt} % ヘッダの長さ(0.4ptがデフォルト)
  • @を含むマクロを作成する時は,マクロを
    \makeatletter
    \makeatother
    で挟む.

文書作成上のTips.

特に,LaTeXに限らず,文書作成での一般論としての注意事項.

アウトライン,小見出しを作成する.

論文を読む際もそれを作っておく.

句読点(.,:;)と直前文字の間にスペースは入れない.逆に,句読点(.,:;)の直後にはスペースを入れる.

例外 i.e.やe.g.やa.e.

タイトル,アブストに数学記号や数式はできるだけ使用しない.

Table 6やFigure 3などの番号付きのものは大文字で始め,

定冠詞をつけない.

(n+1)-thは間違い.(n+1)-st,同様に(n+2)-ndである.

口頭で,n plus firstと読むのに従う.

省略用のピリオドの入力の注意

小文字で終わる省略語句でピリオドを使う場合,ピリオドの後ろに\を入力する.
J. Math.\ Soc.\ Japan
「J.」はJournalの省略だが大文字で終わっているので,特に注意する必要がないが,「Math.」は小文字で終了しているので,「\」を最後に入力する必要がある.

本文中での参考文献引用の際の括弧の形を変更する.

\usepackage[option]{natbib}

optionの部分を変更する.
標準はroundになっており,().[]に変更する場合はsquare.
cf. http://www.stat.psu.edu/~surajit/present/bib.htm

箇条書き

\begin{itemize}
 \item
 \item
 \item
\end{itemize}

下についているキャプションと図の間を変更

\setlength\abovecaptionskip{0pt}

上についているキャプションと図の間を変更

\setlength\belowcaptionskip{5pt}

波線を使えるようにするには、

ulem パッケージを読込んで、\uwave というコマンドを使えば可能です。

\documentclass{jarticle}\relax
\usepackage{ulem}\relax
\begin{document}
 文章の一部にを\uwave{波下線}を引く。
\end{document}

中括弧{}

\{ \}

単に「{ 」と書いただけでは,表示されないので注意.数式などで,中に分数などが入ったりして,それにあわせて括弧の大きさを自動的に変更して欲しいときには下記の記述をする.

\left\{  \right\}

\{ \frac{1}{2} \}

文字に色をつける.

プリアンブルに

\usepackage[dvips]{color}

を書いておく.

\textcolor{blue}{しかうち まなぶ}
&color(blue){しかうち まなぶ};

もう一つの方法として

\color{色}

とすると,それ以後は再度指定があるまで,文字はそのままの色となる.

オプションのdvipsはつけなくても良いが,つけると下記で説明する標準の8色以外の色が67色使えるようになる.colorパッケージを使う時は次の標準では次の8色のみが利用できる.

black, white, red, green, blue, cyan, magenta, yellow

namedオプションを使って,そのほか67色使うことができる.

\textcolor[named]{色}{}
\color[named]{色}

dvipsの定義済みの色に関してはこちらを参照.
「指定する色について」Try and try web byTakuya Fujinamin内
ちなみに色の指定は大文字は大文字で記入しないと怒られるので注意.
○GreenYellow,×greenyellow

数式を書くためのTips.

本文中の記号も全て$ $で囲むこと.

書体が数式と本文で変わってきてしまうので,本文の記号として使っているアルファベットも$$で囲む

カリグラフィー書体を使うには.

\usepackage[mathscr]{eucal}

上記をプリアンブルに書く.\mathcal{} を使うえば,カリグラフィー書体が表示できる.

\mathcal{N}(x | \mu, \sigma),

数式記号 argminの作成

\newcommand{\argmin}{\mathop{\rm argmin}\limits}

\newcommand{\argmin}{\mathop{\rm argmin}\limits}

数式のための書体いろいろ

\mathrm{ }: \mathrm{x, X,  y, z, R, a, b, e, E, f, g, i, j, v, u, p, P, q, r, s, t, T, u, v, w, W}

\mathbb{ }: \mathbb{x, X,  y, z, R, a, b, e, E, f, g, i, j, v, u, p, P, q, r, s, t, T, u, v, w, W}

\mathcal{ }: \mathcal{x, X,  y, z, R, a, b, e, E, f, g, i, j, v, u, p, P, q, r, s, t, T, u, v, w, W}

\mathbf{ }: \mathbf{x, X,  y, z, R, a, b, e, E, f, g, i, j, v, u, p, P, q, r, s, t, T, u, v, w, W}

\bf{ }: {\bf x, X,  y, z, R, a, b, e, E, f, g, i, j, v, u, p, P, q, r, s, t, T, u, v, w, W}

ギリシャ文字をベクトル表記(太字にする)

\def\vect#1{\mbox{\boldmath$#1$}}

ギリシャ文字のベクトル表示(太字)を記載したいときに設定しておく.
\vect{\phi} で太字になる.
ギリシャ文字は{\bf }や\mathbf{}では太字にならない

プライム´とアポストロフィー'

$P's$ Pと$P$'s P'sでは「’」は前者がプライムとなり,後者がアポストロフィーとなる.数学モード中ではプライムとなる.番号にプライムをつけるときも数学モードにするように注意すること.

転置のTの書体にご注意を.

x^T と記述すると x^T となり,転置のTがイタリックのTとなってしまう.

x^{\mathrm{T}} と記述して x^{\mathrm{T}} とする.

ただし,いちいち\mathrmを書くのは面倒なので,文章作成中には x^T と書いておいて,書き終わったら, ^\^T を検索し,^{\mathrm{T}} に一括変換する.

角括弧<>

$<x,y>$ <x,y>
$\langle x,y \rangle$

【目的別Tips1】文章を規定の範囲内で収めるためのTips.

論文などを書いていて,規定としてページ数が設定されているが,ページ数に収まらない.もしくは,中途半端に最後が空いてしまうなんて時に使う便利な方法.

大きく分けて,その方法は2つ.

  1. プリアンブルの部分で定義して,全体を変更する方法などがある.
  2. \vskipなどで文書の一部分だけを変更させる.

ちなみにプリアンブルの書き方,マクロの書き方についての注意はこちら.

全体の行送りを変更する.★★★★★

\def\baselinestretch{0.95}\selectfont

行間の空白のサイズを変更する.標準は1.上記をプリアンブルに書く.長い文章だったら,0.05だけ数値を変えるとページ数が顕著に変化する.0.05程度だと見た目はほとんど変化内容に見えるので,お得!!

ページ数を増やしたかったら1よりも大きく,ページ数を少なくしたかったら1よりも小さく設定する.だいたいの場合はこれで対応できる.

一時的に空白箇所を調整する.★★★★☆

\vskip{}
もしくは
\vspase{}

を使う.\vskipはTexでの書き方で,\vspaseはLaTeXでの書き方.機能は同じ.\vskip{寸法}で標準設定の行送りなどを一時的に変更する.
文章の中で使用する.
ex.
\vskip{-5 pt}

ex.\vskipを用いてのキャプション後のスキップ(cf.図とキャプションの間の空白を調整する.)

\begin{figure}[tbh]
\begin{center}
\includegraphics[]{**.eps}
\end{center}
\vskip -\lastskip \vskip -10pt
\caption{}

図とキャプションの間の空白を調整する.★★☆☆☆

\setlength\abovecaptionskip{0pt}

キャプションの上(図とキャプションの間)の空白を調整.

\setlength\belowcaptionskip{5pt}

キャプションの下(キャプションと本文の間)の空白を調整.

標準の文字サイズを変える.★☆☆☆☆

\documentclass[12pt]{jarticle}

標準の文字サイズは10pt,11pt,12ptしか指定できないので,あまり使えない.そもそも,規定に文字サイズは指定されていることが多いので,ココを変更することはない.でも,一応紹介.

  • 「extsizes」パッケージを使うことも1つの方法.
  • 手っ取り早い方法としては,
    \begin{document}の後に,
    \large:12pt
    \Large:14.4pt
    \LARGE:17.28pt
    などを入れて文字サイズを変える.キャプションなどの部分は変更されないので注意.

セクションタイトルの後の空白を調整する★☆☆☆☆

プリアンブルでセクション見出しを再定義してやる.下記の引数4,5を変更してやる.\makeatletterと\makeatotherで挟んでやる事を忘れずに(cf.「プリアンブル,マクロを書く上での注意」).

\def\section{\@startsection{section} %引数1 見出し,
{1} %引数2見出しのレベル,
{\z@} %引数3見出しの左の空きスペース(インデント量)
{6 pt} %引数4 見出し上の空き
{4 pt} %引数5 見出し下の空き
{\large\bf}%引数6 見出しの属性
}

\subsection,\subsubsection,\paragraph,\subparagraphの見出しも同様に設定できる.

余白などを調整する★☆☆☆☆

\pagestyle{empty}
\setlength{\textwidth}{6.9in}
\setlength{\textheight}{8.75in}
\setlength{\columnsep}{2.5pc}
\setlength{\topmargin}{-0.3in}
\setlength{\oddsidemargin}{-0.3in}
\setlength{\parindent}{1pc}

【目的別Tips2】箇条書きスタイルの文章作成のTips.

  • 勉強会で資料を作るときや自分の研究を整理したいときに,「箇条書きスタイル」の文章は便利.
    • 書くときに頭が整理される.
    • あとから見直すときにも一覧性にすぐれている.
      • インデントを使うことで文章が構造化されているのが,欲しい内容がどこになるのか一目で分かります.
      • 自分の論理が順序立てて書かれているのかの見直しにも使えます.
      • 文章の要素(ブロック)が簡単に見えるので,全体の構成を変えるときには,ブロックごとに移動すればOK.書き出したときに,論理的に順序が逆でもあとで直せばいいと思えば,思考がとだえずに文書が書けて楽.
  • 1,2行で要約を箇条書きにし,さらに詳細が必要であればインデントをさげて,箇条書きにします.
    • 完全な1文でおわるような箇条書きだと,書きにくかったりするので,2行や場合によって3行にわたる文章もOKにしています.

箇条書ききの行間等々の設定変更 ★★★★★

\makeatletter
 \parsep   = -2pt %階層が1つした(段落)との改行幅
 \labelsep = .5zw %先頭記号と文章の間
 \def\@listi{
    \leftmargin = 2zw \rightmargin = 0pt
    \labelwidth\leftmargin \advance\labelwidth-\labelsep
    \topsep     = 5 pt %\baselineskip
    \partopsep  = 10pt \itemsep       = 5pt %項目ごとの改行幅
    \itemindent = 0pt \listparindent = 1zw} %段落でのインデント
 \let\@listI\@listi
 \@listi
 \makeatother

箇条書きの行間などはデフォルトだと間が開き過ぎだったりするので,それを変えるために.

箇条書きの先頭記号の変更★★★★★

\renewcommand{\labelitemi}{・}
\renewcommand{\labelitemii}{・}
\renewcommand{\labelitemiii}{・}

箇条書きの先頭に来る記号を変更できる.
上から,1つ目のインデントで使う記号を{}内に書けばいい.
上記の場合だと「・」が先頭にくる.

箇条書きの書き方

\begin{itemize}
 \item 教師あり学習(supervised learning)
 \begin{itemize}
     \item 入力ベクトルとそれに対応する目標ベクトルの事例で構成される問題.
     \item クラス分類(classification): 入力ベクトルを有限個の離散カテゴリの1つに割り当てる場合.
     \item 回帰(regression): 求める出力が1つないし複数の連続変数である場合.
 \end{itemize}
\end{itemize}

#tex(): Error! The expression is too long or contains invalid characters.

数式

\begin{align}
 E_{\mathrm{RMS}} = \sqrt{ 2E( {\bf w^*} ) /N }  \tag{1.3}
\end{align}
\begin{align}
 p({\bf w}|D) = \frac{  p(D|{\bf w}) p(D) }{p(D)} \tag{1.43} \\
 事後確率  \propto 尤度 \times 事前確率    \nonumber \\
 p(D) = \int p(D | {\bf w}) p({\bf w}) \mathrm{d}{\bf w}  \tag{1.45}
\end{align}

equationとかeqnarrayとかあるが,alignを使うのが便利.\tag{}を使えば,任意の式番号を記載できる.\tag{}をつけなければ,通し番号で式番号がついていく.\nonumber を末尾につければ式番号はナシ.

輪読会などのレジュメ作成で,必要な数式だけを抜き出すと式番号は飛び飛びになったりする.そういうときに便利

ひと工夫

** -------------------
 * -------------------
 ** -------------------% インデントが変わるところは ** 
  * -------------------
  * -------------------
 *** %インデントブロックの終了は *** 
 * -------------------
 ! %数式の開始は ! 
   f(x) = ...
 !! %数式の終了は ! 
 * -------------------
 * -------------------
***

ただでさえ,数式を書くのにそれなりに時間をとられるので.箇条書きの度に \begin{itemize} を書くのは面倒.
ひとまず,上記のように印をつけながら箇条書きの文章を作成する.
書き終えたら,正規表現で印を検索して,変換をおこなう.

^*\$ を \item
^**\$ を \begin{itemize}
^***\$ を \end{itemize}
^!\$ を \begin{align}
^!!\$ を \end{align}

最終更新日: 2014-11-21 (金) 16:14:03 (1705d)

このページをブックマーク:

 

TOP