Mermaid.jsでグラフを簡単に描く方法
読書メモを図にしたいとき、簡単なグラフを作成できるツールがあったら便利です。
調べたらいくつか候補がありました。
- PlantUML https://plantuml.com/ja/
- Mermaid.js https://mermaidjs.github.io/
- Typora https://typora.io/
今回は、手軽に使えて、拡張性もありそうなMermaid.jsを試してみます。
Mermaid.jsとは?
Mermaid.jsは、JavaScriptでグラフやチャート図を描くためのライブラリーです。
(英語の「mermaid」は、日本語で「人魚」という意味)
(公式サイト)
https://mermaid-js.github.io/mermaid/#/
Mermaid.jsは、いろんなところで使われているようです。
(採用例)https://mermaid-js.github.io/mermaid/#/./integrations
The following is a list of different integrations and plugins where mermaid is being used
Editor Plugins
Visual Studio CodeでMermaid.jsを利用するためのプラグインが提供されていました。
Visual Studio CodeでMermaid.jsを使う方法
VSCodeでMermaid.jsを使うためのプラグインがいくつか提供されていました。
「Markdown Preview Mermaid Support」は、Mermaid.js専用のプラグインです。
Mermaid.jsを使うだけならこれでもOKですが、他の作図ツール(PlantUMLなど)も使いたい場合は、より多機能な「Markdown Preview Enhanced」というプラグインでもOKです。
「Markdown Preview Enhanced」は、Mermaid.jsにも対応しており、さらに他の作図ツールにも対応しています。
自分が使っているVisual Studio Codeを見たら、以前に「Markdown Preview Enhanced」をインストールしてあったので、そのまま使ってみることにしました。
(…忘れてた😅)
Markdown Preview Enhancedの使い方
まず、マークダウン記法の文書を作るために、Visual Studio Codeで「mermaid_test.md」などという名前のファイルを作成します。
=拡張子が「md」というファイルですね。
(参考)マークダウンとは?
Markdown(マークダウン)は、文書を記述するための軽量マークアップ言語のひとつである。
本来はプレーンテキスト形式で手軽に書いた文書からHTMLを生成するために開発されたものである。
「mermaid_test.md」に、以下の内容を書いてみます。
バッククオート記号「`」は、Shiftキーを押しながら「@」を押せば入力できます。
詳しいMermaidの書式(グラフの書き方)は、Mermaidのリファレンスを見てね!
https://mermaid-js.github.io/mermaid/#/flowchart
Visual Studio Codeの右上にあるマークダウンのプレビューボタンをクリックします。
すると、Visual Studio Codeの画面右側に、グラフのプレビューが表示されます。
あれ?
なんか色が反転していて、黒くなってる!!!
「Markdown Preview Enhanced 色 黒い」でGoogle検索したら、解決方法が紹介されていました。
VSCodeで、プラグインの設定を変更したら、色がおかしい状態が解決できます。
- プラグインバーを開く
- Markdown Preview Enhancedの欄を探し、歯車マークをクリック
- 「拡張機能の設定」をクリック
- Markdown Preview Enhancedの設定が表示されたらスクロールして「Markdown-preview-enhanced:Mermaid Theme」の設定を見つける
- プルダウンメニューからdefault以外をお好みで選択する
「Markdown Preview Enhanced」で「Mermaid Theme」の設定を変更したら、グラフのプレビューの色が正常になりました。
図の出力
VSCodeのプレビュー画面を右クリックすると、図の出力方法のメニューが出てきます。
メニューの中から、HTMLとかPNGとかを選べば、図がHTMLファイルやPNG画像などで保存されます。
見た目のカスタマイズ
「Markdown Preview Enhanced」でプレビュー用のCSSを編集すれば、自分好みの表示に変更できるようです。(試してない)
continue-to-challenge.blogspot.com
https://shd101wyy.github.io/markdown-preview-enhanced/#/customize-css
To customize css for your markdown file, cmd-shift-p then run Markdown Preview Enhanced: Customize Css command.
VSCodeを開き、キーボードで「Ctrl + Shift + p」を入力して、
「Markdown Preview Enhanced: Customize Css command」と入力(途中まで入力すれば、自動的に候補が出てくるので選択)する。
「Markdown Preview Enhanced」の見た目を決めている「style.css」が表示されたら、
/* Please visit the URL below for more information: */
/* https://shd101wyy.github.io/markdown-preview-enhanced/#/customize-css */
.markdown-preview.markdown-preview {
// modify your style here
// eg: background-color: blue;
}
上記の赤い部分にCSSを書けばいいみたいです。
【追記】 2020/04/23
見た目(色、線)の変え方は、もっと簡単な方法が用意されていました。
=Mermaid.jsのマニュアルをよく読めば、ちゃんと説明されていました。
https://mermaid-js.github.io/mermaid/#/flowchart?id=styling-and-classes
各図をCSSで個別に装飾することができます。
- 線・矢印は「linkStyle」
- 箱は「style」、「classDef」
で指定したら、見た目を変えられました。
線の指定方法は、いまいち思い通りにできませんでした。
【追記】ここまで
以上、Visual Studio Code + Markdown Preview Enhanced + Mermaid.jsでグラフを簡単に描く方法でした。
参考
Google検索したら、Mermaid.jsの使い方の参考情報がたくさん見つかりました。
情報が豊富なので、使い方を調べるのも困らないかもしれませんね。
(有益な情報提供、どうもありがとうございます!😀)