BETA

ラスボス系後輩ヒロインAIチャットボットを作りたい・寄り道クエスト〜Mathjax〜

投稿日:2019-03-08
最終更新:2019-03-18
※この記事は外部サイト(https://qiita.com/perpouh/items/b7a6658f44...)からのクロス投稿です

線形代数および微分・正規分布をやるにあたり、Markdownで数式を書く必要性がでたのでそのあたりの設定をやります。
私が記事の執筆に使っているのはSublimeText3で、パッケージはOmniMarkupPreviewerです。書きながらリアルタイムでプレビューできて便利なやつ。

現在の設定はこう。

{  
  "html_template_name": "github",  
    "renderer_options-MarkdownRenderer": {  
        "extensions": ["tables", "fenced_code", "codehilite"]  
    },  
    "mathjax_enabled": true  
}

mathjax_enabled をtrueにすると、LaTexの記法が使えるようになります。

$$
F(x) = \int_{-\infty}^{x}f(\xi)d\xi
= \frac{1}{\sqrt{2 \pi} \sigma}
\int_{-\infty}^{x}\exp{-\frac{(\xi - m)^{2}}{2 \sigma^{2}}}d\xi
$$

とはいえこの記法自体が全くわからないのでやっていきましょう以下!

Mathjax記法

インライン表記

インラインで数式を書く場合、$>インラインで数式を書く場合、$$ で囲みます。

ここで $f(x) = 2x + 3$ とする。

ここで $f(x) = 2x + 3$ とする。

Qrunchにはインライン表記無いっぽいですね。

ディスプレイ数式

ディスプレイ数式……。慣れない言葉。この場合、\[\] で囲みます。

\[ y= x^4 + a x^3 + b x^2 + c x + d \]

$$
y= x^4 + a x^3 + b x^2 + c x + d
$$

数学の記法

名前 記法 結果
上つき添字 ^{添字} x^{2} $$x^{2}$$
下つき添字 _{添字} n_{i} $$n_{i}$$
分数 \frac{分子}{分母} \frac{1}{3} $$\frac{1}{3}$$
n乗根 \sqrt{引数} \sqrt{2} $$\sqrt{2}$$

中括弧ごとプレースホルダ扱いで見てましたが、中括弧は中括弧として記述するものなんですねこれ。
ここまでなら割とサクッと覚えて書けそう。fracは聞き慣れないのでしばらく迷いそうですが……

主な数学記号

和: \sum

\sum_{k=0}^{n}{k}_{i}\

結果

$$
\sum_{k=0}^{n}{k}_{i}
$$

うわっとなりますけどよくよく見れば上付添字 ^ と下付添字 _ がぐちゃっとなってるだけなのでそんな難しくもないですね。脳内でエンコード/デコードするのに時間はかかりますが。あとsumの引数がわかりにくいか……。
sumの引数(上付添字と下付添え字)は前後逆でもいけました。この辺プログラムよりは柔軟なのかな。勘が掴めない。

積分: \int

\int_{0}^{\infty}{f(x) dx}

$$
\int_{0}^{\infty}{f(x) dx}
$$

intはintegerではなくintegralですね。そしてしれっと \infty が入ってきていますね。

省略記号: \cdots

1, 2, \cdots, n

$$
1, 2, \cdots, n
$$

これはいまいち恩恵を感じない。

行列

\left(    
\begin{array}{cc}  
a & b \\  
c & d  
\end{array}  
\right)  
\left(  
\begin{array}{c}  
x \\  
y  
\end{array}  
\right)  
=  
\left(  
\begin{array}{l}  
a x + b y\\  
c x + d y  
\end{array}  
\right)

$$
\left(
\begin{array}{cc}
a & b \
c & d
\end{array}
\right)
\left(
\begin{array}{c}
x \
y
\end{array}
\right)
=
\left(
\begin{array}{l}
a x + b y\
c x + d y
\end{array}
\right)
$$

注意:Qrunchでは正しく表示されないようです。

他の数式も _ が入るとおかしくなります。Qrunchに数式を書く時、アンスコはバックスラッシュでエスケープしてやるといいみたいです。頑張れ運営! 負けるな運営!

ぎゃー。これは正直もう数式としても意味がわかっていません。解説行きます。
行列は \begin{array}{行列の書式} で始まり、\end{array} で終わります。行列の書式に使われる文字は l(左揃え)、c(中央揃え)、r(右揃え)のみっつです。
各行の列の要素は & で区切り、\\ を改行とします。最後の行には必要ありません。
\left\right は何かと思ったら大きさの変わる括弧なのだそうです。へえ……?(もうちょっとわかりやすいメソッド名付けてほしい)

よくわかっていないとはいえ、線形代数やるなら行列は必要なので頑張ります。為せば成る、為さねば成らぬの気持ちです。

参考
LaTeXの使い方 - 石原研究所
MathJax サンプル - Qiita

この記事はマークダウンで書いた後Qrunch記法に直す謎の手間を加えて作成されました。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@perpouhの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!