Last Updated on 2023年8月10日 by Usayama
ブログで数学や物理関係の記事を書かれる場合、LaTeXが使えるととても便利ですね。”TeX”というと、大学時代を思い出す諸兄も多いのではないでしょうか。
英語を学ぶ記事なのに、数学の式が出てきてすみません。 この記事は、自分の備忘録として書きました。
以下の例の二番目は円周率 \(\pi\) の導出式(ライプニッツの公式、計算の収束は遅いです)、三番目はフーリエ変換の公式です。
\[ y = \frac{\sqrt{x^2-1}}{2x} \quad ({x}\geq{1}, {x}\leq{-1}) \]
\[ \sum_{n=0}^\infty \frac{(-1)^n}{2n+1} = \frac{\pi}{4} \]
\[ F(\omega) = \frac{1}{\sqrt{2\pi}}\int_{-\infty}^{+\infty}f(t)e^{-i\omega t}dt \]
MathJax-LaTeX
追記 このプラグインは長期間更新されていませんので、現在はCDNを用いています。
WordPressをお使いの場合は、プラグイン MathJax-LaTeX をインストールします。
ほとんどのページに数式が入る場合は、設定の Force Load の項目にチェックを入れてください。数式のページが少ない場合は、各ページの先頭に [ と mathjax と ] を記述してください。
Force Load にチェックを入れて、全てのページで MathJax のスクリプトを読み込むと、関係の無いページでもページの表示速度が落ちてしまいます。
MathJax のページ(英文)もご参考にどうぞ。
https://www.mathjax.org/
LaTexのCDN先が2017年4月に変わりましたが、プラグインをアップデートしておけば問題ありません。Mathjax-LaTeXは表示に少し時間のかかる場合があります。
数式を扱える言語TeXのマクロ集合体の最もポピュラーなものがLaTeXで、それをWordPress対応(ブログ等で容易に書けるように)したものがMathJax-LaTexプラグインです。
数式を書く
LaTeX の様式で数式を書いてください。この記事のトップにある数式のコードは以下の通りです。(書式例は上から順に書いています)
UTF-8の場合、\はバックスラッシュで記述されます。マクロも書けます。数式を多く書く方は、後々の保守が楽になると思います。
[ソースコード]
\[ y = \frac{\sqrt{x^2-1}}{2x} \quad ({x}\geq{1}, {x}\leq{-1}) \] \[ \sum_{n=0}^\infty \frac{(-1)^n}{2n+1} = \frac{\pi}{4} \] \[ F(\omega) = \frac{1}{\sqrt{2\pi}}\int_{-\infty}^{+\infty}f(t)e^{-i\omega t}dt \]
LaTeXの書式については、分かりやすい LaTeX入門 などをご参照ください。
(注) $$で挟む記述を見かけますが、推奨されていません。(LaTeX様式ではありません)
おまけ(コードを見やすく表示)
上記のコードはプラグイン SyntaxHighlighter Evolved で表示しています。様々なプログラミング言語だけでなく、LaTeXにも対応しています。こちらもシンプルで便利です。
ツールバーも表示でき、ハイライト表示も可能です。とても使いやすいです。
LaTexでの記述例
[ソースコード]
[1] \begin{bmatrix} 2 & 4+i \\ 4-i & 1 \\ \end{bmatrix} [2] \[ \log_z \frac{x}{y} = \log_z x - \log_z y \] [3] \[ (a+b)^n = \sum_{k=0}^n{}_n\mathrm{C}_k\:a^{k}\:b^{\:n-k} \] [4] \[ \oint_C {f(z) dz} = i \int_{0}^{2 \pi} dt = 2 \pi i\] [5] \[ \nabla f = \frac{\partial f}{\partial x} \hat{ \textbf {x}} + \frac{\partial f}{\partial y} \hat{ \textbf {y}} + \frac{\partial f}{\partial z} \hat{ \textbf {z}} \] [6] \[ x = \frac{-b\pm\sqrt{b^2-4ac}}{2a} \]
いろいろな式を書くことができますが、本当に多彩ですね。
2023年8月10日追記 MathJax-LaTeX プラグインは WordPress 6.3 において未検証のため、念のためにCDNを用いています。
<script async src="https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-mml-chtml.min.js"></script>
上記のコードを本ページのHTMLの記述の前に記載しています。スクリプトのダウンロード中はHTMLのパースを中断しません。複数の<script></script>があり、実行順序が大切な場合は、async の代わりに defer をお使いください。スクリプトは少し重いので、共通部(head内)には置いていません。