MathJaxを一ページでマスターしてみる
やってみる。
なお、新潟大学の野本先生のpdfが現状最も優れていてわかりやすい。
普通にhtmlからホームページを作っているならこのpdfを参考にしてやってみる。
ここからはWordpress用の方法を主に記載していく。
上記pdfはWordpressを使っている方にも分かりやすい。
WordPressならば、このブログが分かりやすい。
まず、MathJax-Latexというプラグインをダウンロードして、有効化する。
設定は基本的にいじらなくてよいが、一番上の「Force Read」にチェックを付けて強制読み込みさせる設定に変更すれば、後述のショートコマンドが不要になるようだ。
最初から「Force Read(強制読み込み)」チェックが付いていないのは、MathJaxを使わないページへの配慮なのだろうが、実際困るケースはほとんどない。
さて、外観→テーマの編集→header.phpなど(「など」と書いたのは、テーマによって微妙に違うことがあるため)に飛んで、下記のスクリプトをあらかじめ記載しておく。
<script type=”text/javascript”
src=”http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML”>
</script>
なお、記載する行はわりとどこでも問題ない。
忘れがちであるが、ブログ冒頭に、「mathjax」(←「」を[ ]に変更してください。そのまま書くと表示が消えてしまうので)とショートコードを記載する。
地味にMathjaxだと認識せず、mathjaxのみ認識するようだ。
そして、リアルタイムで、正しく書けているか確認できる有用なサイトも載せておく。
<script type=”text/x-mathjax-config”>
MathJax.Hub.Config({
displayAlign: “left”,
displayIndent: “2em”
});
</script>
上記のscriptをheader.phpに記載することで、デフォルトでは中央だった式が左寄せになる。
左寄せでなくてもよいならばこのスクリプトは不要である。
あるいは、2emの部分を増減したりいろいろしてもよい。
スマホ対応についてはwordpressのバージョンやプラグインのバージョンにもよるが、表示されない記号がそれなりにあるようである。
下記には「\」と記載することが多いが、本来は\のみである。これは命令と誤認して表示されなくなるため致し方なく「」で囲んで\を保護している。
あとはルールに従って書いていくだけ。
基本ルール15個
1 文章中の改行には<br>を使う。
2 文章中の数式は「\」(と「\」)ではさむ。$$ではさんでもよいが、認識しない場合もある。
3 行を独立させた数式は「\」[と「\」]ではさむ。
4 数式中のスペースおよび改行は無視される。
5 「\ 」などと\の後にスペースを入れることで数式中のスペースとして反映される。
6 数式コマンドの後ろにアルファベットが連続するとアルファベットまでコマンドとして含まれて認識されてしまい、エラーになるので、コマンド直後に半角スペースを入れる。スペースは基本的に無視されるが、このようにコマンドを正しく認識させる場合においては必須である。
7 数式コマンドの後ろに記号や数字が連続しても問題ないが、わかりやすさのためにスペースを入れてもよい。いずれにせよスペースは表示結果に影響がない。
8 数式を改行する場合は、「\」begin{align}~「\」end{align}という命令で複数行の数式をはさまなければならない。
9 改行するときは「\\」と命令する。
10 改行した数式の位置を揃えるためには、各行に「&」を挿入すると、その位置に表示される。
11 改行の上下間隔を変更するためには、「\\[npt]」(nは数字。マイナスも可)などと改行命令「\\」を修正すればよい。
12 場合分けを書くときは、「\」begin{cases}~「\」end{cases}で数式を挟む。ただし挟む部分は、「場合分けの部分に限る」ことに注意。X=A or Bのときに、A or Bの部分だけを挟む。
13 場合分けにおいても、上記と同じように、&を用いて複数行の表示位置を合わせる。また、\\を用いて改行することも同様。
14 行列は、場合分けと同様、「\」begin{pmatrix}~「\」end{pmatrix}で行列のみを挟む。なお、pmatrix以外にもかっこの種類はある。
15 行列においては、&で列を区切り、\\で次の行に移る。
基本的なコマンド
スペース7種
「\(\ \)」「\ 」←半角スペースがある:半角スペース
「\(\quad\)」「\quad」:スペース(標準とする)
「\(\qquad\)」「\qquad」:2倍スペース
「\(\,\)」「\,」:3/18スペース
「\(\:\)」「\:」:4/18スペース
「\(\;\)」「\;」:5/18スペース
「\(\!\)」「\!」:-3/18スペース
ギリシャ文字小文字30種(24+6)
\(\alpha\) \alpha
\(\beta\)\beta
\(\gamma\)\gamma
\(\delta\)\delta
\(\epsilon\)\epsilon
\(\varepsilon\)\varepsilon
\(\zeta\)\zeta
\(\eta\)\eta
\(\theta\)\theta
\(\vartheta\)\vartheta
\(\iota\)\iota
\(\kappa\)\kappa
\(\lambda\)\lambda
\(\mu\)\mu
\(\nu\)\nu
\(\xi\)\xi
\(\omicron\)\omicron
\(\pi\)\pi
\(\varpi\)\varpi
\(\rho\)\rho
\(\varrho\)\varrho
\(\sigma\)\sigma
\(\varsigma\)\varsigma
\(\tau\)\tau
\(\upsilon\)\upsilon
\(\phi\)\phi
\(\varphi\)\varphi
\(\chi\)\chi
\(\psi\)\psi
\(\omega\)\omega
なお、varについてはこちらのサイトが詳しい。斜体、変体、太字などについてはこちらのサイト(論文)が詳しい。
ギリシア文字の表記についての基本事項
・ギリシア文字そのものは本来斜体ではない。
・物理量や変化する量、変数を表す文字は斜体(イタリック体ともいう)で表記しなければならない。
・定ベクトル、定行列は太字(ボールド体ともいう)で表記しなければならない。
・ベクトル変数、行列変数はボールドイタリック体で表記しなければならない。
・Mathjaxにおいては、わざわざ斜体ではないギリシア文字を扱うことは考えづらいので、ギリシア文字を入力すれば自然に斜体になる。
・ギリシア文字の前に「var(variable:変数)」をつけることで、別の表記となるギリシア文字がいくつか存在する。変体文字ともいうらしい。
・ギリシア文字の大文字は、アルファベットとほぼ一致するものも多く、通常、一致しないものが数式に用いられる。
・ギリシア文字の大文字も、もともと斜体ではない。
・ギリシア文字の大文字は数式においては「立体的な表記」が好んで使われる。
・ギリシア文字コマンドの頭文字を大文字にすることで大文字のギリシア文字コマンドとなる。
・MathJaxにおいては、ギリシア文字の大文字は自然に立体文字になる。
・大文字のギリシア文字コマンドの頭にさらにvarをつけることで、立体斜体文字となる。
ギリシア文字大文字22種類(アルファベットと異なる12+斜体10)
\(\Gamma\)\Gamma
スマホ未対応?\varGamma
\(\Delta\)\Delta
スマホ未対応?\varDelta
\(\Theta\)\Theta
スマホ未対応?\varTheta
\(\Lambda\)\Lambda
スマホ未対応?\varLambda
\(\Xi\)\Xi
スマホ未対応?\varXi
\(\Pi\)\Pi
スマホ未対応?\varPi
\(\Sigma\)\Sigma
スマホ未対応?\varSigma
\(\Upsilon\)\Upsilon
スマホ未対応?\varUpsilon
\(\Phi\)\Phi
スマホ未対応?\varPhi
\(\Psi\)\Psi
スマホ未対応?\varPsi
\(\Omega\)\Omega
スマホ未対応?\varOmega
かっこ8種(xを使って例示)
\((x)\)(x)
\([x]\)[x]または\lbrack x \rbrack
\(\{x\}\)\lbrace x \rbrace
\(\langle x \rangle \)\langle x \rangle
\(\lfloor x \rfloor\)\lfloor x \rfloor
\(\lceil x \rceil\)\lceil x \rceil
\(|x|\)|x|
\(\|x\|\)\|x\|
・\bigl \Bigl \biggl \Bigglを左かっこの前に置くとかっこが大きくなる
・lをrに変えると右かっこが大きくなる
・\leftを左かっこの前におくとかっこの大きさが自動で調整される。右も同様。
二項演算子30個
\(+\)+
\(-\)-
\(\pm\)\pm
\(\mp\)\mp
\(\times\)\times
\(\div\)\div
\(\ast\)\ast
\(\star\)\star
\(\cdot\)\cdot
\(\bullet\)\bullet
\(\circ\)\circ
\(\bigcirc\)\bigcirc
\(/\)/(slash)
\(\backslash\)\backslash
\(\setminus\)\setminus
\(\wr\)\wr
\(\wedge\)\wedge
\(\vee\)\vee
\(\cap\)\cap
\(\cup\)\cup
\(\sqcap\)\sqcap
\(\sqcup\)\sqcup
\(\oplus\)\oplus
\(\ominus\)\ominus
\(\otimes\)\otimes
\(\oslash\)\oslash
\(\odot\)\odot
\(\dagger\)\dagger
\(\ddagger\)\ddagger
\(\amalg\)\amalg
関係演算子48個
\(=\)=
\(\neq\)\neq
\(\doteq\)\doteq
スマホ未対応?\doteqdot
\(\equiv\)\equiv
\(\sim\)\sim
スマホ未対応?\backsim
\(\simeq\)\simeq
スマホ未対応?\backsimeq
スマホ未対応?\eqsim
\(\approx\)\approx
スマホ未対応?\approxeq
\(\cong\)\cong
\(\propto\)\propto
スマホ未対応?\varpropto
\(\perp\)\perp
\(\mid\)\mid
スマホ未対応?\shortmid
スマホ未対応?\parallel
スマホ未対応?\shortparallel
スマホ未対応?\therefore
スマホ未対応?\because
スマホ未対応?\risingdotseq
スマホ未対応?\fallingdotseq
\(\lt\)\lt
\(\gt\)\gt
\(\ll\)\ll
\(\gg\)\gg
スマホ未対応?\lll
スマホ未対応?\ggg
\(\le\)\le
\(\leq\)\leq
\(\ge\)\ge
\(\geq\)\geq
スマホ未対応?\leqq
スマホ未対応?\geqq
スマホ未対応?\leqslant
スマホ未対応?\geqslant
スマホ未対応?\lesssim
スマホ未対応?\gtrsim
\(\subset\)\subset
\(\supset\)\supset
\(\subseteq\)\subseteq
\(\supseteq\)\supseteq
スマホ未対応?\subseteqq
スマホ未対応?\supseteqq
\(\in\)\in
\(\ni\)\ni
\(\notin\)\notin
スマホ未対応?\backepsilon
例外:「\not」(斜線を重ねる)
関数34個
\(\sin\)\sin
\(\cos\)\cos
\(\tan\)\tan
\(\cot\)\cot
\(\sec\)\sec
\(\csc\)\csc
\(\arcsin\)\arcsin
\(\arccos\)\arccos
\(\arctan\)\arctan
\(\sinh\)\sinh
\(\cosh\)\cosh
\(tanh\)\tanh
\(\coth\)\coth
\(\exp\)\exp
\(\log\)\log
\(\ln\)\ln
\(\lg\)\lg
\(\arg\)\arg
\(\deg\)\deg
\(\dim\)\dim
\(\hom\)\hom
\(\ker\)\ker
\(\bmod\)\bmod
\(\pmod{n}\)\pmod{n}
\(\lim\)\lim
\(\min\)\min
\(\max\)\max
\(\inf\)\inf
\(\sup\)\sup
\(\liminf\)\liminf
\(\limsup\)\limsup
\(\det\)\det
\(\gcd\)\gcd
\(\Pr\)\Pr
記号44種
\(\emptyset\)\emptyset
スマホ未対応?\varnothing
\(\infty\)\infty
\(\aleph\)\aleph
スマホ未対応?\complement
\(\partial\)\partial
スマホ未対応?\digamma
\(\hbar\)\hbar
スマホ未対応?\hslash
\(\imath\)\imath
\(\jmath\)\jmath
\(Bbbk\)\Bbbk
スマホ未対応?\varkappa
\(\ell\)\ell
\(\Re\)\Re
\(\Im\)\Im
スマホ未対応?\mho
スマホ未対応?\eth
\(\prime\)\prime
スマホ未対応?\backprime
\(\surd\)\surd
\(\nabla\)\nabla
\(\triangle\)\triangle
スマホ未対応?\square
スマホ未対応?\blacksquare
スマホ未対応?\bigstar
\(\spadesuit\)\spadesuit
\(\heartsuit\)\heartsuit
\(\diamondsuit\)\diamondsuit
\(\clubsuit\)\clubsuit
\(\angle\)\angle
スマホ未対応?\measuredangle
スマホ未対応?\sphericalangle
\(\top\)\top
\(\bot\)\bot
スマホ未対応?\diagup
スマホ未対応?\diagdown
\(\forall\)\forall
\(\exists\)\exists
スマホ未対応?\nexists
\(\neg\)\neg
\(\lnot\)\lnot
\(\sharp\)\sharp
\(\flat\)\flat
\(\natural\)\natural
記号(大)
\(\sum\)\sum
\(\sum_{k=1}^{n}\)\sum_{k=1}^{n}(他も同様に上限下限を記載できる)
\(\prod\)\prod
\(\coprod\)\coprod
\(\bigcap\)\bigcap
\(\bigcup\)\bigcup
\(\biguplus\)\biguplus
\(\bigsqcup\)\bigsqcup
\(\bigwedge\)\bigwedge
\(\bigoplus\)\bigoplus
\(\bigvee\)\bigvee
スマホ未対応?\bigtimes
\(\bigodot\)\bigodot
\(\int\)\int
\(\oint\)\oint
\(\iint\)\iint
\(\iiint\)\iiint
スマホ未対応?\iiiint
スマホ未対応?\idotsint
上付き記号18個
\(\vec{x}\)\vec{x}
\(\bar{x}\)\bae{x}
\(\tilde{x}\)\tilde{x}
\(\breve{x}\)\breve{x}
\(\hat{x}\)\hat{x}
\(\check{x}\)\check
\(\acute{x}\)\acute{x}
\(\grave{x}\)\grave{x}
\(\dot{x}\)\dot{x}
\(\ddot{x}\)\ddot{x}
スマホ未対応?\dddot{x}
スマホ未対応?\ddddot{x}
\(\overrightarrow{xyz}\)\overrightarrow{xyz}
\(\overleftarrow{xyz}\)\overleftarrow{xyz}
\(\widetilde{xyz}\)\widetilde{xyz}
\(\overline{xyz}\)\overline{xyz}
\(\underline{xyz}\)\underline{xyz}
行列など
\(\cdots\)\cdots
\(\ldots\)\ldots
\(\vdots\)\vdots
\(\ddots\)\ddots
矢印42個44表記
\(\rightarrow\)\rightarrow
\(\to\)\to
\(\leftarrow\)\leftarrow
\(\gets\)\gets
\(\longrightarrow\)\longrightarrow
\(\longleftarrow\)\longleftarrow
\(\leftrightarrow\)\leftrightarrow
\(\longleftrightarrow\)\longleftrightarrow
\(\mapsto\)\mapsto
\(\longmapsto\)\longmapsto
\(\hookrightarrow\)\hookrightarrow
\(\hookleftarrow\)\hookleftarrow
スマホ未対応?\rightleftarrows
スマホ未対応?\leftrightarrows
スマホ未対応?\rightrightarrows
スマホ未対応?\leftleftarrows
\(\uparrow\)\uparrow
\(\downarrow\)\downarrow
\(\updownarrow\)\updownarrow
スマホ未対応?\upuparrows
スマホ未対応?\downdownarrows
\(\nearrow\)\nearrow
\(\searrow\)\searrow
\(\nwarrow\)\nwarrow
\(\Rightarrow\)\Rightarrow
\(\Leftarrow\)\Leftarrow
\(\Longrightarrow\)\Longrightarrow
\(\Longleftarrow\)\Longleftarrow
\(\Leftrightarrow\)Leftrightarrow
\(\Longleftrightarrow\)\Longleftrightarrow
\(\Uparrow\)\Uparrow
\(\Downarrow\)\Downarrow
\(\Updownarrow\)\Updownarrow
\(\rightharpoonup\)\rightharpoonup
\(\rightharpoondown\)\rightharpoondown
\(\leftharpoonup\)\leftharpoonup
\(\leftharpoondown\)\leftharpoondown
スマホ未対応?\leftrightharpoons
スマホ未対応?\upharpoonleft
スマホ未対応?\upharpoonright
スマホ未対応?\downharpoonleft
スマホ未対応?\downharpoonright
書体9種
\(ABC\) ABC
\(\boldsymbol{ABC}\) \boldsymbol{ABC}
\(\mathbf{ABC}\) \mathbf{ABC}
\(\mathrm{ABC}\) \mathrm{ABC}
\(\mathsf{ABC}\) \mathsf{ABC}
\(\mathtt{ABC}\) \mathtt{ABC}
\(\mathcal{ABC}\) \mathcal{ABC}
\(\mathfrak{ABC}\) \mathfrak{ABC}
\(\mathbb{ABC}\) \mathbb{ABC}
他(重要)7種
\(\frac{x}{y}\) \frac{x}{y}
スマホ未対応?\dfrac{x}{y}
スマホ未対応?\tfrac{x}{y}
\(\sqrt{x}\) \sqrt{x}
\(\sqrt[n]{x}\) \sqrt[n]{x}
スマホ未対応? \binom{x}{y}
\(\tag{1}\) \tag{1}
WordPress特有の表示されない仕様(pdfやwebからコピー)
マニアックかもしれないが、例えばpdfファイルなどから
MathJaxのコマンドをコピーペーストした場合、
Wordpressにおいては、<span>タグが自動的につく仕様がある場合がある。
この場合、コマンドが有効化されないので、一度Wordやメモ帳に
書式のないテキストとして貼り付けてからWordpressに張り付けるとよい。
Web上の文書についても、場合によってはcolorなどの様々な属性が付加されて、
コマンドが無効となることがあるので、一度書式を消してから貼り付ければよい。
有名な公式
二次方程式の解
コード:x=\frac{-b\pm\sqrt{b^{2}-4ac}}{2a}\tag{1}
\(x=\frac{-b\pm\sqrt{b^{2}-4ac}}{2a}\tag{1}\)
あとは、上記の応用をしていくだけである。
MathJaxは一度使い方を覚えれば非常に有用である。
ぜひ参考にして頂きたい。