組織図

組織図について

組織図(organizational chart)は、組織の公式な報告関係をマッピングします。誰が誰を管理し、どのチームがどのリーダーの下にあり、未充足のポジションや外部アドバイザーがどこに位置するかを示します。HR チームは人員計画時に参照し、創業者は取締役会前に使用し、運営管理者は組織再編時に配布します。汎用のフローチャートとは異なり、組織図は人物(およびポジション)を主要なエンティティとして扱い、階層はインデントや明示的なエッジでエンコードされます。

Schematex は、空きポジション・マトリックス(点線)報告・アシスタント関係の拡張を含む一般的な組織図の慣習に従っています。組織図に単一の ISO 標準はなく、ここで実装されている慣習は HR の実践とソフトウェア業界の規範から引用しています。学術的な背景については Fayol (1916)Wikipedia の組織図記事 を参照してください。

orgchart·§
↘ preview
100%
Acme Corp — Q3 2025 Organizational chart with 15 people and 12 relationships Acme Corp — Q3 2025 Jamie Torres CEO Raj Patel CTO Priya Nair Engineering Lead Alex Kim Senior Engineer Jordan Lee Engineer NEW open "TBH" Frontend Engineer Omar Hassan Engineering Lead Yuki Tanaka Staff Engineer draft "TBH" Senior Engineer $ Maria Santos CFO Nour Ahmed Finance Manager Ellen Wu CPO Tyler Brooks Product Lead Suki Ito Product Lead Dr. Alan Ford Board Advisor
UTF-8 · LF · 18 lines · 878 chars✓ parsed·1.3 ms·14.8 KB SVG

1. はじめての組織図

最小限の実用的な組織図:1つの空きポジションを含む3階層の階層構造。

orgchart·§
↘ preview
100%
Engineering Team Organizational chart with 4 people and 2 relationships Engineering Team Wei Zhang CTO Sam Obi Engineering Lead Ana Rossi Engineer open "TBH" Engineer
UTF-8 · LF · 5 lines · 209 chars✓ parsed·0.5 ms·6.1 KB SVG

以下の4つのルールで利用の80%をカバーできます。

  1. キーワード orgchart で始め、オプションで引用符付きタイトルを続けます。
  2. 各人物はノードid: "Name" | "Title" | "Department" [props]| で名前、タイトル、部署のフィールドを区切ります。
  3. インデントが階層を決定します — スペース2つ(以上)を増やすごとに、ノードが直上の最も少ないインデントのノードの1段深い子になります。
  4. 空きポジションは open id: または draft id: で宣言し、外部アドバイザーは advisor id: で宣言します。

コメントは単独行の # で始める必要があります(インラインの末尾 // も削除されます)。


2. ノード

ノード行の形式は [kind] id: fields [props] です。id[A-Za-z][A-Za-z0-9_-]* にマッチする必要があります。

2.1 フィールド(パイプ区切り)

: の後、オプションの [props] ブロックの前の部分が | で分割されます。

alice: "Alice Zhang"                                # name only
alice: "Alice Zhang" | "VP Engineering"             # name + title
alice: "Alice Zhang" | "VP Eng" | "Platform"        # name + title + department
alice: "Alice Zhang" | "VP Eng" | "Platform" | "x@co.com"  # + info line
位置内容備考
1番目名前引用符あり/なし
2番目タイトル/職位オプション
3番目部署オプション
4番目情報行オプション。note:email:phone:location: プロパティでも設定可能
orgchart·§
↘ preview
100%
Field count demo Organizational chart with 4 people and 2 relationships Field count demo AL Alice BO Bob "CTO" CA Carol "Engineer" DA Dave "VP Sales" "dave@co.com"
UTF-8 · LF · 5 lines · 161 chars✓ parsed·0.4 ms·4.1 KB SVG

2.2 ノードの種類

ID の前のオプションの種類キーワードでノードの描画方法が変わります。

キーワード種類意味
(なし)person通常の人物
roleopenrole空き/未充足ポジション
drafttbhdraft計画中のポジション(積極採用中ではない)
advisorexternaladvisor外部アドバイザー、取締役、コントラクター
orgchart·§
↘ preview
100%
Node kinds Organizational chart with 5 people and 2 relationships Node kinds Jordan Kim CEO Priya Nair Engineering Lead TBH Senior Engineer HIRING TBH Staff Engineer Dr. Lee Board Advisor
UTF-8 · LF · 6 lines · 289 chars✓ parsed·0.4 ms·6.4 KB SVG

2.3 ノードプロパティ

プロパティはノード行の末尾の [key: value, …] に記述します。

プロパティ効果
role:下表参照アバターに表示されるロールアイコン
icon:role: と同じrole: のエイリアス
department:テキスト部署フィールドをオーバーライド
status:new | leaving | on-leaveカードのステータスピル
avatar-color:16進カラー(例:"#7B1FA2"アバターの背景色
gender:male | femaleアバターシルエット(ロールアイコンが設定されていない場合に使用)
note:テキスト情報行(最初のものが優先)
email:テキスト情報行
phone:テキスト情報行
location:テキスト情報行
assistant-of:ノード IDこのノードを指定ノードのアシスタントとして描画
matrix:スペースまたはカンマ区切りのノード IDそれらのノードからこのノードへ点線マトリックスラインを追加
reports:ノード IDインデントの代わりに明示的な親を設定
open(単独フラグ)ノードをオープン扱いにする。role 種類キーワードと同等
draft または tbh(単独フラグ)ノードをドラフト扱いにする。draft 種類キーワードと同等
external(単独フラグ)ノードを外部扱いにする。advisor 種類キーワードと同等

ロールアイコンrole: の値が表示アイコンに対応します。受け付けるキーワード(大文字・小文字不問):

キーワードアイコン
ceoCEO
ctoCTO
cfoCFO
cooCOO
cmoCMO
cpoCPO
vpVP
engineerengineeringEngineer
designerdesignDesigner
salesSales
hrHR
legalLegal
opsoperationsOps
marketingMarketing
productProduct
dataData
advisorAdvisor
internIntern
vacantVacant
orgchart·§
↘ preview
100%
People directory Organizational chart with 8 people and 3 relationships People directory Jamie Torres CEO Raj Patel CTO Priya Nair Staff Engineer NEW Jordan Lee Senior Engineer $ Maria Santos CFO Nour Ahmed Finance Manager ON LEAVE Dr. Alan Ford Board Advisor TBH General Counsel
UTF-8 · LF · 9 lines · 470 chars✓ parsed·0.6 ms·8.3 KB SVG

3. 階層

階層はインデントで表現します。最も一般的なパターンです。各ノードはその上でインデントが小さいノードの子になります。タブはスペース2つとして扱われます。

ceo: "CEO"
  cto: "CTO"           # child of ceo (indent 2)
    eng: "Engineer"    # child of cto (indent 4)
  cfo: "CFO"           # child of ceo (indent 2, same level as cto)

または、reports: プロパティを使って、インデントに関係なく親を明示的に設定することもできます。

orgchart "Flat file"
ceo: "CEO"
cto: "CTO" [reports: ceo]
eng: "Engineer" [reports: cto]
orgchart·§
↘ preview
100%
Series A Startup Organizational chart with 12 people and 8 relationships Series A Startup Lena Brandt CEO James Osei CTO Platform Lead Engineering Fatima Al-Rashid Backend Engineer Marco Ricci Backend Engineer Frontend Lead Engineering Yumi Tanaka Frontend Engineer NEW open "TBH" Frontend Engineer Diana Russo CPO Chris Obi Product Manager Kai Nakamura CMO draft "TBH" Growth Marketer
UTF-8 · LF · 13 lines · 647 chars✓ parsed·0.7 ms·12.4 KB SVG

4. エッジ

エッジには2種類あります。ほとんどの報告ラインはインデント階層から自動的に生成されます。明示的に書くことも、マトリックス(点線)ラインを追加することもできます。

演算子エッジの種類意味
from -> toreport実線の報告ライン
from -.-> tomatrix点線のマトリックス(間接)報告ライン

明示的なエッジは、両方のノード ID がすでに宣言されている必要があります。インデントで既に示されている同じ関係は、明示的に report エッジを書いても重複しません。

エッジラベルもサポートされています。

pm1 -.-> design [label: "product partnership"]
orgchart·§
↘ preview
100%
Matrix org Organizational chart with 5 people and 3 relationships Matrix org design partner Ellen Wu CPO Core PM Product Manager Growth PM Product Manager Suki Ito Design Lead Ben Park Data Lead
UTF-8 · LF · 10 lines · 378 chars✓ parsed·0.5 ms·5.4 KB SVG

5. 設定

config: 行でレイアウトと方向を調整します。各行を独立した行に記述します。

設定キーデフォルト効果
directionTDLRTDトップダウンまたは左から右への流れ
layouttreelistdirectorycompacttreeビジュアルレイアウトモード

レイアウトの注意:

  • tree — 分岐コネクターを持つ標準的な階層ツリー。ほとんどの組織図に最適。
  • list / directory / compact — コンパクトなインデント付きディレクトリビュー。ツリーの分岐が扱いにくくなる大人数リストに適しています。

ツリーレイアウト(デフォルト)— 分岐コネクターと部署カラーコーディングを持つアバターカード。〜30人以下のチームに最適。

orgchart·§
↘ preview
100%
Acme Engineering — tree Organizational chart with 8 people and 5 relationships Acme Engineering — tree Wei Zhang CTO Platform Lead Engineering Amara Diallo Staff Engineer Ben Novak Senior Engineer draft "TBH" Engineer Growth Lead Engineering NEW Fatima Al-Rashid Senior Engineer Marco Ricci Engineer
UTF-8 · LF · 9 lines · 454 chars✓ parsed·0.7 ms·10.4 KB SVG

リストレイアウト — インデントガイド付きのコンパクトなディレクトリ行。ツリーの分岐が扱いにくくなる大チームに最適。

orgchart·§
↘ preview
100%
Engineering Directory — list Organizational directory with 8 people and 5 reporting relationships Engineering Directory — list · Wei Zhang CTO PT Platform Team 3 reports · Amara Diallo Staff Eng · Ben Novak Senior Eng · draft "TBH" Engineer GT Growth Team 2 reports · Fatima Al-Rashid Senior Eng · Marco Ricci Engineer
UTF-8 · LF · 10 lines · 421 chars✓ parsed·0.8 ms·8.4 KB SVG

6. ラベルとコメント

  • タイトル: orgchart "Acme Corp" — 最初の行のみ。
  • 名前フィールド: コロンの後の最初のパイプ区切りフィールド。引用符あり("Alice Zhang")または引用符なし(Alice)。
  • タイトル/部署フィールド: 2番目と3番目のパイプ区切りフィールド。
  • 情報行: 4番目のパイプ区切りフィールド、または note:email:phone:location: プロパティで設定。最初に見つかったものが優先。
  • コメント: 行頭(先頭スペースの後)の #。インラインの // も削除されます。

7. 予約語とエスケープ

行頭の予約語: orgchart(ヘッダー)、config:roleopendrafttbhadvisorexternal

予約演算子トークン — ID 内でこれらのシーケンスを避けてください:->-.->.

ID ルール: [A-Za-z][A-Za-z0-9_-]* にマッチする必要があります。スペースを含む名前は、ID ではなく引用符付き名前フィールドに入れてください。

スペースを含む props 値(例:department: "Platform Eng")はダブルクォートで囲む必要があります。


8. よくある間違い

書いた内容パーサーの応答修正方法
alice: Alice Zhang(スペースを含む名前を引用符なしで記述)Alice が名前としてパースされ、Zhang は失われるか誤読される名前を引用符で囲む:alice: "Alice Zhang"
open1 open: "TBH"ID の後の open は種類キーワードではなく、ID 正規表現に失敗種類キーワードを先頭に:open open1: "TBH"
どちらのノードも宣言前の alice -> bobOrgchartParseError: Edge references unknown nodeノードを先に宣言し、エッジは末尾に記述する
config: direction = top-down不明な値は無視され、direction は TD のままTD または LR を使用する
config: layout = compact受け付け — list レイアウトにマップされる正しい。compactdirectorylist はすべて機能する
alice [matrix: bob charlie]matrix: のスペース区切り ID — 両方が追加されるカンマでも機能:matrix: "bob, charlie"
スペースを含むノード ID:fe leadパーサーは fe を ID として取得し、lead は失敗アンダースコアを使用:fe_lead
重複 IDOrgchartParseError: Duplicate node id各ノードに一意の ID が必要

9. 文法(EBNF)

document       = header (blank | comment | config | edge | node)*

header         = "orgchart" ( WS quoted-string )? NEWLINE
quoted-string  = '"' any-char-but-quote* '"'

config         = "config" WS ":" WS key WS "=" WS value NEWLINE
key            = "direction" | "layout"

node           = INDENT* kind? id ":" WS fields ( "[" node-attrs "]" )? NEWLINE
kind           = "role" | "open" | "draft" | "tbh" | "advisor" | "external" | "person"
fields         = field ( "|" field )*
field          = quoted-string | unquoted-text
node-attrs     = node-attr ("," node-attr)*
node-attr      = "role:" role-keyword
               | "icon:" role-keyword
               | "department:" text
               | "status:" ( "new" | "leaving" | "on-leave" )
               | "avatar-color:" quoted-hex
               | "gender:" ( "male" | "female" )
               | "note:" text
               | "email:" text
               | "phone:" text
               | "location:" text
               | "assistant-of:" id
               | "matrix:" id-list
               | "reports:" id
               | bare-flag

bare-flag      = "open" | "draft" | "tbh" | "external"

edge           = id WS edge-op WS id ( "[" edge-attrs "]" )? NEWLINE
edge-op        = "->" | ".->"  // -.-> for matrix
edge-attrs     = "label:" quoted-string

id             = [A-Za-z] [A-Za-z0-9_-]*
comment        = ( "#" | "//" ) any NEWLINE

権威ある情報源:src/diagrams/orgchart/parser.ts。このドキュメントとパーサーが乖離している場合、パーサーが優先されます。Issue を立ててください。


10. ロードマップ

計画中 — 現在はパース不可。 生成する DSL でこれらを使用しないでください。パーサーが拒否または無視します。

  • assistant-of: の視覚的レンダリング — プロパティはパースされ AST に格納されますが、レンダラーはまだアシスタントのエルボーコネクターを描画しません。
  • 設定 coloring — 部署ベースのカラーテーマ(coloring: department)。
  • 設定 compact サイズ段階 — 明示的なカードサイズ制御(size: small | medium | large)。
  • span: ノード幅 — ツリーレイアウトで複数の兄弟列にまたがるノード。
  • 写真 / アバター URLavatar: "https://…" で実際の顔写真を表示。
  • HRIS フォーマットへのエクスポート — SVG に加えて JSON/CSV 構造化出力。

早急に必要な場合は GitHub の Issue でトラッキングしてください。


関連サンプル

サンプルギャラリーから使用可能なシナリオ:

orgchart·§ HR convention
Acme — Series A Team Organizational chart with 15 people and 13 relationships Acme — Series A Team Jamie Torres CEO Raj Patel CTO Priya Nair Eng Lead Alex Kim Senior Engineer Jordan Lee Engineer NEW open "TBH" Frontend Engineer Omar Hassan Eng Lead Yuki Tanaka Staff Engineer draft "TBH" Senior Engineer Ellen Wu CPO Tyler Brooks Product Lead Suki Ito Product Lead Maria Santos COO Nour Ahmed Finance Manager Dr. Alan Ford Board Advisor
Series-A tech startup org
Three-level org chart for a ~30-person Series-A startup — CEO with engineering, product, and ops directs, showing open roles and a board advisor.
saas
orgchart·§ HR convention
Scaleup — Matrixed Product Lines Organizational chart with 14 people and 17 relationships Scaleup — Matrixed Product Lines Jamie Torres CEO Raj Patel CTO Priya Nair Eng Lead Alex Kim Senior Engineer Jordan Lee Engineer Omar Hassan Eng Lead Yuki Tanaka Staff Engineer Maya Patel Engineer Ellen Wu CPO Tyler Brooks PM Suki Ito PM Liu Wei CDO Ana Rossi Designer Kai Park Designer
Scale-up with matrix reporting
Org chart for a 60-person scale-up with two product lines — solid-line functional reporting plus dotted-line product-manager reporting into each engineering lead.
saas

Found this useful?

Schematex is free, fully open source, and zero-dependency. A star helps other developers discover it.