この記事では、LaTeXを初めて使用する人向けに、MathJax-LaTeXのごく基本的な文法・コマンドを解説します。これだけでも小中学校レベルの数式は記述できると思います。
数式モード
MathJax-LaTeXで数式を記述するためには、文章中で『ここからここまでが数式です』ということが判るようにしなければなりません。そのため、数式を表す部分を特定のコマンド(文字列)で囲むように記述します。このようにしてLaTeXの数式を表す文法が有効になっている部分を『数式モード』といいます。
書き方1
数式モードを表すための書き方の1つは、『 \[
』と『 \]
』で囲むことです。 \[ 数式 \]
と囲まれた部分が整形されて表示されます。このとき、数式の前後で自動的に改行されます(この形式をディスプレイ形式/displaystyleといいます)。数式は通常の『段落』だけでなく、『表』の中や『見出し』の中にも記述することができます。
※ただし改行されてしまって見難いので見出しに記述するのはオススメしません
例
二次方程式\[ax^2+bx+c=0\]の解の公式は、 \[x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\]です。
と入力すると、
二次方程式\[ax^2+bx+c=0\]の解の公式は、\[x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\]です。
と表示されます。
備考
\[ 数式 \]
の代わりに $$ 数式 $$
という書き方もあります。MathJax-LaTeXでも使用できますが、厳密にはLaTeXではなくplain TeXのコマンドなので非推奨です。
書き方2
書き方1の記述法では数式の前後で改行され、かつ数式部分がセンタリングされて前後の文から独立して表示されました。しかし数式を文中に改行せず表示したいこともあります。
この場合、\[ 数式 \]
の代わりに \( 数式 \)
(角括弧ではなく丸括弧になっている)と記述すると、数式の部分が改行されず、文と連続して表示されます(この形式をMathJaxではインライン形式、LaTeXではtextstyleといいます)。数式は通常の『段落』の中だけではなく、『表』の中や『見出し』の中にも記述することができます。
例
二次方程式 \(ax^2+bx+c=0\) の解の公式は、\(x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\)です。
と入力すると、
二次方程式 \(ax^2+bx+c=0\) の解の公式は、\(x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\)です。
と表示されます。
ただしこの場合、数式が1行の高さに収まるように、分数の部分が小さなフォントで上下に押しつぶされたように表示されています。他にも、たとえば\(\displaystyle\sum^n_{k=1}\)のような高さのある記号は\(\sum^n_{k=1}\)のように表示形式が変更されます。これを通常の表示形式にしたい場合には、\displaystyleコマンドを使用します。
例
二次方程式 \(ax^2+bx+c=0\) の解の公式は、 \(x=\displaystyle\frac{-b\pm\sqrt{b^2-4ac}}{2a}\) です。
と入力すると、
二次方程式 \(ax^2+bx+c=0\) の解の公式は、 \(x=\displaystyle\frac{-b\pm\sqrt{b^2-4ac}}{2a}\) です。
と表示されます。
備考
LaTeXではインライン数式を表すのに \( 数式 \)
の代わりに $ 数式 $
という書き方もあるのですが、他のプラグインと競合するためMathJax-LaTeXプラグインのデフォルト状態では使用できなくなっています。
書き方3
複数の数式を整列して表示させたい場合は、\begin{align} 数式 \end{align}
と記述します。このように\begin{○○}~\end{○○}
で囲まれた部分のことをLaTeXでは『○○環境』と呼びます。特定の環境でしか動作しないコマンドがあったり、特定の環境中では通常とは意味が異なる文字があったりします。
※なお、\[ ~ \]
や \( ~ \)
の部分も環境の一種です(実はそれぞれ \begin{displaymath}~\end{displaymath}
、\begin{math}~\end{math}
の省略表記です)
詳しい文法は別記事で説明することにして、ここでは簡単な例を示します。
例
align環境では『&』の位置が縦に揃うように表示されます。下の例では、=の部分を&=と記述することによって、イコールの位置が縦に揃うようにしています。
\begin{align}
ax^2+bx+c &= 0 \\
y &= px+y
\end{align}
\begin{align}
ax^2+bx+c &= 0 \\
y &= px+q
\end{align}
align環境はそれ自体が数式モードを表すため、別に \[~\]
や \(~\)
を記述する必要はありません。
備考
MathJaxでは、他にequation環境、eqnarray環境などいろいろな環境が使用できるようです。align環境のようにそれ自体が数式モードを表すものや、 \[~\]
の中で使用するものなどいろいろあります。詳しくはLaTeXやAMS-LaTeXの解説書、本サイトの別記事などを参照して下さい。
これ以降、特にことわりのない限り、サンプルコードでは \[~\]
や \(~\)
を省略してあります。
基本の数式
基本の基本
べき乗も関数も特殊記号も使用しない数式は、数式環境(\[数式\]
や\(数式\)
の中)でそのまま式を記述するだけです。
表示 | 記述 |
---|---|
\(y=ax+b\) | y=ax+b |
\(f(x)=a(x-p)(x-q)\) | f(x)=a(x-p)(x-q) |
空白や改行
LaTeXの数式モードでは、空白や改行は完全に無視されます(HTMLと異なり、空白1つ分も間隔が空きません)。
表示 | 記述 |
---|---|
\(A+B\) | A+B |
\(A + B\) | A + B |
\(A + B \) | A + B |
この例のように、ソース中に空白や改行があっても表示は完全に同じになります。
ソースでは表示とは関係なく空白・改行を使用して、判りやすく書くことができます。
空白や改行して表示したい場合はコマンドで指定します。下記以外にもたくさんありますので、リファレンスの頁を参照して下さい。
表示 | 記述 |
---|---|
\(AB\) | AB(比較用) |
\(A\,B\) | A\,B |
\(A\quad B\) | A\quad B |
\(A\\B\) | A\\B |
上付き文字(べき乗)、下付き文字
上付き文字(べき乗など)を表すには^を使用します。
表示 | 記述 |
---|---|
\(x^2\) | x^2 |
\(y=ax^2+bx+c\) | y=ax^2+bx+c |
下付き文字(添字など)を表すには_を使用します。
表示 | 記述 |
---|---|
\(a_n\) | a_n |
ブロック
べき乗などの記号やコマンド類は、直後の1文字(1文字を表すコマンド)だけに作用します。複数の文字を使用する場合は、{…}
のように、波括弧を用いてブロックを作成します。
表示 | 記述 |
---|---|
\(x^{n+1}\) | x^{n+1} |
\(x^{a^b}\) | x^{a^b} |
分数
分数を記述するには、\fracコマンドを使用します。書式は\frac{分子}{分母}です。
表示 | 記述 | 解説 |
---|---|---|
\[\frac12\] | \frac12 | 基本の書式です。間違いやすいので\frac{1}{2}と記述した方がいいかもしれません |
\[\frac{11}{123}\] | \frac{11}{123} | 分母・分子が2文字以上の場合はブロックを使用します。 |
\[\frac{n(n+1)}{2}\] | \frac{x^2+1}{2} | 分子や分母のブロック内に数式を使うこともできます。 |
\[\frac{1+\frac{b}{a}}{1+\frac{c}{d}}\] | \frac{1+\frac{b}{a} }{1+\frac{c}{d}} | \fracの中に\fracを使用すると繁分数になります。 |
数学記号や特殊文字
LaTeXでは、直接キーボードから入力できないような記号や文字は、コマンドを使って記述します。ここでは、いくつかの簡単な例を紹介します。
特殊な文字
LaTeXでは、特殊な文字を表示するためのコマンドが非常に多く定義されています。ここではほんの一部を紹介します。原則として数式の中では全角文字を使用できませんので、英数字といくつかの半角記号以外はすべてコマンドを使います。
ギリシャ文字
変数に使われる \(\alpha\) や \(\beta\) や円周率を表す \(\pi\) などのギリシャ文字はコマンドで表示します。全角文字にも『α』『β』などがありますが、LaTeX数式中では使用しないで下さい。
表示 | 記述 |
---|---|
\(S=\pi r^2\) | S=\pi r^2 |
\(\omega^2+\omega+1=0\) | \omega^2+\omega+1=0 |
演算記号など
数式に使う記号のうち、半角文字にないものはコマンドで出力します。全角文字にも『÷』『≧』などがありますが、LaTeX数式中では使用しないで下さい。
表示 | 記述 | 解説 |
---|---|---|
\(a \times b \div c\) | a \times b \div c | 四則演算のうち \(+\) と \(-\) はそのまま記述できるのですが、\(\times\) と \(\div\) はコマンドで記述します。 |
\(x\geq 0\) | x \geq 0 | 不等号\(<\)、\(>\)はそのまま記述できるのですが、\(\leq\) 、\(\geq\) はコマンドで記述します。 |
図形の記号
図形に使用する記号もコマンドで出力できます。全角文字にも『△』『⊥』などがありますが、LaTeX数式中では使用しないで下さい。
表示 | 記述 |
---|---|
\(\triangle ABC \equiv \triangle DEF\) | \triangle ABC \equiv \triangle DEF |
\(AB \perp MN\) | AB \perp MN |
ルート
ルートを表すには、\sqrtコマンドを使用します。ルートのように中に大きな数式を入れることができる記号は他にもありますが、LaTeXにはそれらを表示するためのコマンドが数多く用意されています。
表示 | 記述 | 解説 |
---|---|---|
\(\sqrt{a}\) | \sqrt{a} | 基本の書式です。 |
\(\sqrt[3]{a}\) | \sqrt[3]{a} | \sqrt[数式]とすると、3乗根、4乗根…を表すことができます。 |
\(\sqrt{a+2\sqrt{b}}\) | \sqrt{a+2\sqrt{b}} | \sqrtのブロックの中に任意の数式を書くことができます。根号の大きさは自動的に調節されます。 |
例文
ここまでに紹介した構文を使った文章の例をいくつか掲載します。もっと高度な例はジャンル毎の記事を参照して下さい。
例1
二次方程式 \(ax^2+bx+c=0\) の解の公式は、 \[x=\displaystyle\frac{-b\pm\sqrt{b^2-4ac}}{2a}\] です。
二次方程式 \(ax^2+bx+c=0\) の解の公式は、 \[x=\displaystyle\frac{-b\pm\sqrt{b^2-4ac}}{2a}\] です。
この記事の最初の方でも例としてあげた二次方程式の解です。インライン形式とディスプレイ形式を混在させています。
例2
底面の半径 \(r\)、高さ \(h\) の円錐の体積 \(V\) は、\(V=\displaystyle\frac{1}{3}\pi r^2 h\)で表されます。
底面の半径 \(r\)、高さ \(h\) の円錐の体積 \(V\)は、\(V=\displaystyle\frac{1}{3}\pi r^2 h\)で表されます。
日本語の文中に登場する \(r\) や \(h\) などの文字も数式中とフォントを同じにするため、それぞれインライン数式にしています。ただ数式用のフォントは前後の文字とくっついて見えてしまうので、数式の前後に半角空白1つを挿入してわずかに隙間を空けています。
公式の部分は分数が小さくならないように\displaystyleコマンドを使用しています。
例3
\(\triangle ABC\) と \(\triangle DEF\) において、
仮定より \(\angle ABC = \angle DEF\)
\(\angle ACB = \angle DFE\)
また、\(BC=EF\)
以上より、1辺とその両端の角が等しいので、
\(\triangle ABC \equiv \triangle DEF\)
\(\triangle ABC\) と \(\triangle DEF\) において、
仮定より \(\angle ABC = \angle DEF\)
\(\angle ACB = \angle DFE\)
また、\(BC=EF\)
以上より、1辺とその両端の角が等しいので、
\(\triangle ABC \equiv \triangle DEF\)
図形の証明っぽい例文を作ってみました。
例4
次の連立方程式を解きなさい。
\begin{align}
12x+5y&=103 \\
x+2y&=7
\end{align}
次の連立方程式を解きなさい。
\begin{align}
12x+5y&=103 \\
x+2y&=7
\end{align}
数式を整列させるalign環境を使って、テストの問題っぽい例文を作ってみました。先に説明したのと同じく、&を使って=を縦に揃えています。
最後に
これで中学校レベルの数式までは記述できるようになったと思います。次はレベル2をどうぞ。
この記事中に掲載していない記号や文字を表示するコマンドは、本サイト内のリファレンスなどを参照して下さい。
コメント