.mdv と .qmd(Quarto)の詳細比較

Note

これは 参考ページ です。.mdv.qmd(Quarto)はどちらも Markdown ベースのデータ可視化フォーマットですが、設計思想が異なる別系統の仕組みです。quarto-plus では .qmd を常用し、.mdv は参考として扱います。

Markdownベースのデータ可視化フォーマットを、設計思想から実用性まで徹底解剖します。

1. 概要:ふたつのフォーマット

MDV(.mdv)
Markdown Data & Visualization の略。Markdown の厳密なスーパーセットとして、チャート・KPIカード・テーブルなどを宣言的な記法で埋め込めるレポートフォーマット。コードを書かなくてもデータ可視化が可能です。
Quarto(.qmd)
Posit(旧 RStudio)が開発するオープンソースの科学・技術出版システム。Python / R / Julia / Observable のコードを実行し、その結果(グラフや表)を文書に埋め込みます。再現可能なレポート作成が核心です。

どちらも「Markdown をベースにして、データやグラフを埋め込めるフォーマット」という点で共通しています。しかし、グラフをどうやって作るかという点で本質的な違いがあります。

2. 設計思想の違い

2.1 MDV:宣言的なデータ可視化

MDV の核心は「コードを書かずに、宣言的な記法だけでグラフを作る」ことです。chart type=line data=sales x=month y=revenue のように、属性を指定するだけでレンダラーが SVG グラフを生成します。

これにより、プログラミングの知識がない営業担当者やマネージャーでも、Markdown の知識だけで見栄えの良いレポートを作成できます。出力は自己完結型の HTML(インライン SVG、JS ランタイム不要)または PDF です。

2.2 Quarto:実行可能なレポート

Quarto の核心は「コードとその結果を一体化した再現可能な文書」です。Python や R のコードブロックを文書内に書き、レンダリング時に実際に実行してグラフや表を生成します。

これにより、データが更新されても同じコードを再実行すれば、常に最新の結果が反映された文書が得られます。データサイエンスや研究分野で「再現性」が重視される理由がここにあります。

本質的な違いを一言で: MDV は「グラフを宣言する」、Quarto は「コードを実行してグラフを生成する」。前者は手軽さを、後者は再現性と柔軟性を追求しています。

3. 構文の比較

3.1 最小構成の文書

.mdv(宣言的):

---
title: Q1 Report
theme: report
---

# Q1 Results

```stat
label, value, delta
Revenue, $2.06M, +14%

chart type=bar x, y A, 10 B, 20


**`.qmd`(コード実行)**  — 以下は表示用の例です(実際には実行されません):

```markdown
---
title: "Q1 Report"
format: html
---

# Q1 Results

```python
import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.bar(["A", "B"], [10, 20])
plt.show()

### 3.2 データの参照方法

**`.mdv`(データ参照は front-matter で):**

```mdv
---
data:
  sales: ./data/sales.csv
---

```chart type=line
data=sales
x=month
y=revenue

**`.qmd`(データ参照はコードで)**  — 以下は表示用の例です(実際には実行されません):

```markdown
```python
import pandas as pd

sales = pd.read_csv("data/sales.csv")

import plotly.express as px
fig = px.line(sales, x="month", y="revenue")
fig.show()

```

3.3 構文の違いの要点

項目 .mdv .qmd
グラフの指定方法 属性ベース(type=line data=sales コードベース(Python/R/Julia を記述)
コード実行 不要(レンダラーが解釈) 必要(Knitr または Jupyter エンジン)
YAML front-matter タイトル・テーマ・データ参照 タイトル・出力形式・実行オプション等
コンテナ構文 ::: callout / ::: columns Div 構文 ::: {.callout}

4. 機能比較表

機能 .mdv .qmd(Quarto)
Markdown 互換性 CommonMark の厳密なスーパーセット Pandoc Markdown(拡張 Markdown)
グラフ生成(宣言的) ネイティブ対応 コードで記述が必要
コード実行 非対応 Python / R / Julia / Observable
HTML 出力 自己完結型(インライン SVG) 対応
PDF 出力 対応 対応(LaTeX 経由も可)
Word 出力 非対応 対応
PowerPoint 出力 非対応 対応
プレゼンテーション 対応(スライド形式) reveal.js / PowerPoint / Beamer
ダッシュボード ネイティブ対応 Quarto Dashboards 対応
ブログ/ウェブサイト 非対応 対応
書籍作成 非対応 対応
VS Code 拡張 ライブプレビュー対応 公式拡張あり
RStudio 統合 非対応 ネイティブ統合
数式(LaTeX) テーマ依存 MathJax / KaTeX 対応
相互参照(図表番号) 非対応 対応
引用・参考文献 非対応 Pandoc citeproc 対応
呼び出し(Callout) ::: callout ::: callout-*
タブセット 非対応 対応
目次(TOC) ::: toc YAML オプションで設定

5. エコシステムとツール

5.1 開発元とコミュニティ

項目 .mdv .qmd(Quarto)
開発元 個人開発者(GitHub: drasimwagan/mdv) Posit(旧 RStudio、商用企業)
GitHub Stars 約 500(2026年時点) 数万規模
ライセンス MIT MIT / GPL(複数コンポーネント)
主要ユーザー層 エンジニア、マネージャー、レポート作成者 データサイエンティスト、研究者、統計分析者
主要言語エコシステム TypeScript / JavaScript R, Python, Julia, JavaScript

5.2 エディタ統合

MDV は VS Code 拡張によるサイドバイサイドのライブプレビューが主要な編集体験です。CLI ツールで HTML/PDF へのレンダリングも可能です。

Quarto は VS Code 拡張に加え、RStudio とのネイティブ統合が強力です。RStudio 上では「Source パネルで編集 → Viewer パネルでプレビュー」という統合環境が提供されています。また、JupyterLab 拡張もあります。

5.3 学習曲線

項目 .mdv .qmd(Quarto)
最低限必要な知識 Markdown のみ Markdown + Python/R/Julia のいずれ
グラフを作るまでの手順 属性を指定するだけ コードを書いて実行する
カスタマイズの自由度 テーマ・スタイルで調整(限定的) コードで完全に制御可能
初心者が最初のグラフを出すまで 短い(数分) 中程度(環境構築 + コード理解)

6. 用途別の選び方

.mdv を選ぶ場面 - 営業レポートや月次報告書を手軽に作りたい - チームメンバーがコードを書けない - CSV データからすぐにグラフを出したい - 自己完結型の HTML/PDF を共有したい - シンプルなダッシュボードが欲しい - 「コードは見せたくない、結果だけ見せたい」

.qmd を選ぶ場面 - データ分析のプロセスを文書化したい - コードと結果をセットで残したい(再現性) - Python / R で複雑な分析をしている - 論文や技術文書を書きたい - ウェブサイトやブログも同じ体制で作りたい - 相互参照や参考文献管理が必要

6.1 具体例で比較

例1:営業チームの月次レポート — 推奨:.mdv

営業担当者は Markdown を書くだけで、CSV から KPI カードやグラフを自動生成できます。コードを書く必要がなく、学習コストが極めて低いです。

例2:機械学習の実験レポート — 推奨:.qmd

モデルの訓練コード、評価指標の計算、可視化をすべて1つの文書に統合できます。データが更新されても再実行すれば最新結果が反映されます。

例3:社内向け軽量ダッシュボード — 推奨:.mdv

宣言的な記法でレイアウトとグラフを配置でき、HTML 出力は単一ファイルなので社内サーバーに置くだけで共有できます。

例4:学術論文の草稿 — 推奨:.qmd

LaTeX 数式、図表番号の相互参照、参考文献管理(BibTeX)がすべて統合されています。PDF 出力も出版品質です。

7. まとめ

.mdv と .qmd は、どちらも「Markdown にデータ可視化を組み合わせたフォーマット」という大きな文脈で共通しています。しかし、そのアプローチは正反対に近いです。

比較軸 .mdv .qmd(Quarto)
哲学 シンプルさ・手軽さ 再現性・柔軟性・統合性
グラフの作り方 宣言する(属性を書く) 実行する(コードを書く)
対象ユーザー 非エンジニアも含む広い層 データサイエンティスト・研究者
規模 軽量・特化型 大規模・汎用型出版システム
将来性 新興(コミュニティ形成中) 確立済み(企業バックアップあり)

最終的な判断基準:「コードを書く必要があるか?」が分かれ目です。コードが必要なら Quarto、不要なら MDV が自然な選択です。ただし、Quarto の方が圧倒的にエコシステムが大きいため、長期的な観点からは Quarto の学習投資の価値が高い場面も多いです。

関連