Milkのメモ帳

日々の思いつきを忘れないようにのメモ用です。

Milkのメモ帳

【はてなブログ】数式を綺麗に表示してみよう【Tex】


f:id:maxminkun:20170530114754j:plain

こんにちは。Milkです。
資格の勉強中ですが、その内容をアウトプットしたいなぁと思っています。

結構ね、自分で自分のブログを見直したりするのよ。

PCのUbuntuセットアップは、自分のブログの過去記事を見ながらやってます(笑)

と言うことで、現在「システムアーキテクト」という資格の勉強をしていますが、その内容を備忘録として残しておこうと思います。

そうすれば楽しく覚えられるし、知識共有できるなぁって。

そういう訳で、書こうと思ったんだけど、数式を綺麗に表現する方法がないものかと探していたのでした。

Tex(LaTex)で表現する

理系の方には馴染み深いものでしょう。

Tex(LaTex)とは、主に数式を綺麗に表現するために利用される言語です。

論文を書くにはこれで書くのが当たり前だろう!という場所もあったりします。
(と言うか未だにそういう文化は根強くある。)

特に、公式などは綺麗に表現しないと、ぱっとみた時に何がなにやら・・・となってしまいます。

見た目の違い

ちょっと簡単な表現をしてみましょう。

M/M/1モデルの待ち時間の公式です。


通常で書いた場合。

Tw = (ρ/(1-ρ)) μ


Texを利用した場合。

{\displaystyle Tw = \left(\frac{ρ}{(1-ρ)}\right)μ}


通常書くとすると、分数は「/」として表すことしか出来ませんが、Tex(LaTex)を利用することで、より視覚的に分かりやすい形で表現できます。

利用の仕方

以下の記事を参考にさせていただきました。

blog.thetheorier.com

以下のコードを使います。

[tex:{\displaystyle }]

この\displaystyleの後ろに必要な数式を書きます。

実は、待ち時間の公式はこのように書いていました。

[tex:{\displaystyle Tw = \left(\frac{ρ}{(1-ρ)}\right)μ}]

面白いことに、どの編集モードでも動きます。

つまり、

  • みたままモード
  • はてな記法
  • Markdown記法

のどれでも使えます。

数式ってどう書けばいいの?

そのままに数式を埋め込むことも出来ますが、せっかくですから数学特有の記号だったり、表現方法を使いたいですよね。

こちらを見ると使い方が分かります。

www.latex-cmd.com

幾つかサンプルを書いてみましょう。

[tex:{\displaystyle \lim_{x \to \infty} f(x)}]

{\displaystyle \lim_{x \to \infty} f(x)}


[tex:{\displaystyle 
f(x) = \sum_{i=0}^n x_i
}]

{\displaystyle
f(x) = \sum_{i=0}^n x_i
}

Markdown記法の場合には注意が必要

以下の記事を参考にさせていただきました。

minus9d.hatenablog.com

Markdown記法の場合、使用している文字の兼ね合いの問題で、「はてな」側の解釈で一部バグに近い動きのものがあるようです。

上手く表示されない場合は、以下のタグを付けて利用してみて下さい。

<pre style="border: none; font-size: 100%;">
[tex:{\displaystyle }]
</pre>

例えば以下のようにします。

Tex表示例(行列)

{\displaystyle 
  A =
    \begin{pmatrix}
      a & b & c \\
      d & e & f \\
      g & h & i
    \end{pmatrix}
}

Tex表示例(連立方程式)

{\displaystyle 
\begin{eqnarray}
  \left\{
    \begin{array}{l}
      x + y = 10 \\
     2x + 4y = 32
    \end{array}
  \right.
\end{eqnarray}
}

細かい対処方法

この「はてなブログ」では、JavaScriptによって、擬似的にTex(LaTex)に変換し表示を行っています。

「MathJax」と言うライブラリを利用しているようです。

www.mathjax.org

よって、一部はTexと完全には一致してきません。

この、MathJaxの利用例がまとめられているのはこちらになります。

Easy Copy MathJax

Texは外部ライブラリをインポートして動いている部分があると思われます。

恐らくはこれが、MathJaxとは完全には一致しない要因でしょう。

困ったらこちらを調べると良いでしょう。

他の方法

他には$$で単純に囲むという方法もあります。

adragoona.hatenablog.com

ただし、こちらは中央寄りに表示されますから、その点は注意して下さい。

最後に

さて、やっと数式をそれなりに綺麗に表現できるようになりました。

勉強した内容の備忘録として残すために利用してみるのはいかがでしょうか。

今回はこんなところで。

adios!!