Markdown で分数の数式を書く方法

技術文書、学術ノート、数学関連の文章を書いていると、Markdown に分数や数式を入れたい場面がよくあります。この記事では LaTeX の分数構文、エディターごとの対応の違い、そしてすぐに使えるオンラインツールを紹介します。

LaTeX の分数構文の基本

Markdown 自体は数式を直接サポートしていませんが、拡張機能を使って LaTeX 構文を埋め込むことで、分数を含む数式を表示できます。

LaTeX では、分数は通常 \frac{分子}{分母} と書きます。

  • ブロック数式(独立した行):二重のドル記号 $$...$$ で囲みます
  • インライン数式(文中に埋め込み):単一のドル記号 $...$ で囲みます

たとえば、分数 はインライン数式として インライン数式: $\frac{1}{2}$ と書けます。

表示結果は次のとおりです。

インライン数式:

ブロック数式として書くこともできます。

ブロック数式:
$$
\frac{1}{2}
$$

表示結果は次のとおりです。

ブロック数式:

よく使われる Markdown エディター

Typora

Typora は LaTeX 数式に対応した高機能な Markdown エディターです。欠点は有料ソフトであることです。

typora screenshot

ただし、1 つ注意点があります。

(a) Typora はデフォルトではインライン数式に対応していません

Typora は既定ではブロック数式($$...$$)だけをレンダリングし、インライン数式($...$)は通常のテキストとして表示され、数式としては描画されません。

(b) インライン数式を使うには、設定で個別に有効にする必要があります

インライン数式を使いたい場合は、Typora の該当オプションをオンにします。

Typora を開き、環境設定(または Settings)の Markdown 関連の設定にある 「構文サポート」 の 「Inline Math」 オプションにチェックを入れて有効にし、Typora を再起動します。

有効にすると、$E = mc^2$ や $\frac{a}{b}$ などのインライン数式が正しくレンダリングされます。

(c) 設定画面のイメージ

Typora inline math setting

Obsidian

Obsidian も高機能で、しかも無料の Markdown エディターです。

obsidian screenshot

(a) インライン数式にデフォルトで対応

Obsidian は、追加設定なしでインライン LaTeX 数式に対応しています。ノートに $\frac{1}{2}$ や $x^2 + y^2 = z^2$ と入力すれば、プレビューで正しくレンダリングされた数式を確認できます。数学や物理のノートをよく書く人にとって、とても便利な点です。

オンラインツール:Markdown Viewer

ローカルエディターの設定に手間をかけたくない場合や、数式を含む Markdown をブラウザですばやくプレビューしたい場合は、Markdown Viewer を試してみてください。

markdownviewer screenshot

markdownviewer は、Markdown の表示とエクスポートができる無料のオンラインツールで、インライン数式とブロック数式にデフォルトで対応しているため、設定は一切不要です。左側に Markdown を入力すると右側に即座にプレビューが表示され、PDF・HTML・Word へのエクスポートにも対応しています。

数式の例

次に、複雑な数式の書き方をいくつか紹介します。いずれも markdownviewer で正しく表示されます。

1. 二次方程式の解の公式:
Markdown:$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$
表示:

2. オイラーの等式:
Markdown: $e^{i\pi} + 1 = 0$
表示:

3. ガウス積分:

Markdown: $\int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi}$
表示:

4. 自然数の和:

Markdown: $\sum_{k=1}^{n} k = \frac{n(n+1)}{2}$
表示:

5. 極限:
Markdown: $\lim_{x \to 0} \frac{\sin x}{x} = 1$
表示:

6. 偏微分:

Markdown: $\frac{\partial^2 f}{\partial x \partial y}$
表示:

7. 2×2 行列:
Markdown:

$$
\begin{pmatrix} a & b \\ c & d \end{pmatrix}
$$

表示:

8. 複雑な数式の例:
Markdown:

$$
\begin{align*}
y = y(x,t) &= A e^{i\theta} \\
&= A (\cos \theta + i \sin \theta) \\
&= A (\cos(kx - \omega t) + i \sin(kx - \omega t)) \\
&= A\cos(kx - \omega t) + i A\sin(kx - \omega t)  \\
&= A\cos \Big(\frac{2\pi}{\lambda}x - \frac{2\pi v}{\lambda} t \Big) + i A\sin \Big(\frac{2\pi}{\lambda}x - \frac{2\pi v}{\lambda} t \Big)  \\
&= A\cos \frac{2\pi}{\lambda} (x - v t) + i A\sin \frac{2\pi}{\lambda} (x - v t)
\end{align*}
$$

表示:

単純な でも、上で紹介した積分や行列のような複雑な数式でも、Markdown Viewer なら正しくレンダリングできます。markdownviewer.cc にアクセスすればすぐに使い始められ、完全無料で、登録も不要です。