HELLO CYBERNETICS

深層学習、機械学習、強化学習、信号処理、制御工学などをテーマに扱っていきます

はてなブログで数式を含む記事を書く際の設定

 

 

follow us in feedly

https://cdn.blog.st-hatena.com/images/theme/og-image-1500.png

はじめに

問い合わせで、「はてなブログで数式を書く場合にどのような設定を用いれば良いのか?」という質問が来ました。 実は私自身もはてなブログで数式を打ち込むことにはかなり苦労した口であるので、ここで一旦まとめておきたいと思います。

 

はてなブログのMarkdownについて

私の場合編集モードをMarkdownにしています。 このMarkdownを使うことで、qiitaやjupyter notebookなどでもお馴染みの形式で数式を(ある程度)表示できるようになります。 ただし、若干はてなブログ特有の部分があるので、そこを中心にまとめておきたいと思います。

 

編集モードをMarkdownにする

まずはこれからです。 記事を書くで、記事の編集モードに入ったら、すぐ左上にある「編集 見たまま」をクリックし「Markdown」を選択します。

 

f:id:s0sem0y:20180611201016p:plain f:id:s0sem0y:20180611201030p:plain

 

もしもこのときに本文を書き込んでしまっている場合には、編集モードを変更した際に全て本文が消えてしまいます。 ここは注意が必要な部分ですので、必ず記事を書き始める最初に編集モードを変えるようにしてください。

 

本文の改行に関して

本文を書く際の注意点として「改行のやり方」が挙げられます。 改行を行うためには、Markdownでは空行を1つ入れなければなりません。 すなわち、改行を入れるための具体例を挙げておきます。

 

改行が入らないケース

Markdownでの入力

f:id:s0sem0y:20180611201929p:plain

 

こんにちは、 HELLO CYBERNETICSへようこそ。

 

改行が入るケース

Markdownでの入力

f:id:s0sem0y:20180611202038p:plain

 

こんにちは、

HELLO CYBERNETICSへようこそ。  

空行を入れたいケース

このケースは結構めんどくさいです。 改行が入るケースを応用して、「全角スペースだけの行」を1つ挟んで改行を行います。

Markdownでの入力

f:id:s0sem0y:20180611202249p:plain

こんにちは、

 

HELLO CYBERNETICSへようこそ。

 

 

 

なんか他に方法ないものか…w

 

数式入力

初歩

基本的に行中に数式を表示したい場合は$ y=ax $という形で書いてやればよく、独立した行に書いてやりたければ

$$
y = ax
$$

と書いてやればよいです。

 

それぞれの違いは$y=ax$と$$y=ax$$という形で現れます。  

エスケープが必要な例

数式入力は、latexの通りにやれば基本的には問題ないのですが、注意点として、 y=ax^2とlatexでは書くところを、はてなブログのMarkdownモードで数式を書き込む際にはy=ax\^2とエスケープ「\」を「^」の前に噛ませなければなりません。 そうすることによって初めて$y=ax^2$を表示することができます。

また同様にしてy_i=ax_iなどのように下付き文字を使いたい場合にもy\_i = ax_iのようにエスケープが必要になります。

 

更に、

\begin{align}
y &= ax \\
z &= f(y)
\end{align}

とするところは、改行の「\」をエスケープしてやる必要があり「\\」と書かねばなりません。つまり、

\begin{align}
y &= ax \\\
z &= f(y)
\end{align}

と書くことによって、

$$ \begin{align} y &= ax \\ z &= f(y) \end{align} $$

が実現できます。

 

 

エスケープが足りないというのは本当にありがちですので、表示が上手くいかない場合にはまず疑って掛かりましょう。 しかし、まあ、そもそもなぜこんなふうな仕組みなのか全くわからない…w