『エルデン公爵家の末子』(第三章第5話前編)のアドレスです。
https://kakuyomu.jp/works/16818622172619949326/episodes/16818622175067453311『エルデン公爵家の末子』(第三章第5話前編の人物相関図)です。
筆者が、pythonで組んだSVG画像をスクショしました。
『エルデン公爵家の末子』第三章第5話前編のアドレスです。
そのプログラムを以下に載せておきます。ご自由に改変してご使用下さい。
# 念のため、再生成ではなく dot.pipe() を用いて直接 SVG データを書き出して保存する方法を試す
import graphviz
# 人物相関図の定義
dot = graphviz.Digraph(format='svg')
dot.attr(size='16,24', rankdir='TB', fontname="MS Mincho")
dot.node_attr.update(fontname="MS Mincho", fontsize='12')
dot.edge_attr.update(fontname="MS Mincho", fontsize='11')
dot.graph_attr.update(fontname="MS Mincho", nodesep='1.5', ranksep='1.5')
# ノード定義
dot.node('アレクシウス', 'アレクシウス\n(22歳)\n北ティアンロン公爵')
dot.node('ライラ', 'ライラ・バルガン\n(37歳)\n元キルハン王妃・正妻')
dot.node('ナジール', 'ナジール・バルガン\n(21歳)\n王子→セヴェリナ辺境へ左遷')
dot.node('アイリス', 'アイリス\n(48歳)\n水魔術師・第一側室')
dot.node('ロラン', 'ロラン\n(50歳)\n戦術補佐・アイリスの夫')
dot.node('セレナ', 'セレナ\n(22歳)\n第二側室・交易担当')
dot.node('マーカス', 'マーカス\n(18歳)\n前線支援')
dot.node('リーナ', 'リーナ\n(14歳)\n見習い魔術師')
dot.node('リヤーナ', 'リヤーナ\n(34歳)\n第三側室・元ジャハンの妻')
dot.node('ジャハン', 'ジャハン\n(40歳)\nオルダナ族族長・降伏')
# 関係線定義
dot.edge('アレクシウス', 'ライラ', label='正妻')
dot.edge('ライラ', 'ナジール', label='母子')
dot.edge('アレクシウス', 'アイリス', label='第一側室')
dot.edge('アレクシウス', 'セレナ', label='第二側室')
dot.edge('アレクシウス', 'リヤーナ', label='第三側室')
dot.edge('アイリス', 'ロラン', label='夫婦')
dot.edge('アイリス', 'セレナ', label='母娘')
dot.edge('アイリス', 'マーカス', label='母子')
dot.edge('アイリス', 'リーナ', label='母子')
dot.edge('セレナ', 'ジャハン', label='降伏させる')
dot.edge('ジャハン', 'リヤーナ', label='元夫婦')
# pipeでSVG出力してからファイルに書き込む
svg_data = dot.pipe(format='svg')
svg_path = "アレクシウス陣営_人物相関図_最終版.svg"
# バイナリ書き込みで保存
with open(svg_path, 'wb') as f:
f.write(svg_data)
svg_path