Untitled

 avatar
unknown
plain_text
10 months ago
2.7 kB
9
Indexable
from graphviz import Digraph

# Family tree style diagram
family_tree = Digraph("FamilyTree", format="png")
family_tree.attr(rankdir="TB", size="8")

# Royal Family
family_tree.node("Arvidd", "King Arvidd")
family_tree.node("Ivarna", "Queen Ivarna")
family_tree.node("Annabelle", "Princess Annabelle (Anne)")
family_tree.node("Elara", "Princess Elara")

family_tree.edges([("Arvidd", "Annabelle"), ("Ivarna", "Annabelle"),
                   ("Arvidd", "Elara"), ("Ivarna", "Elara")])

# Zelia's Family
family_tree.node("Finitian", "Finitian (Fin)")
family_tree.node("Adelina", "Adelina (Addie/Lina)")
family_tree.node("Zelia", "Zelia (Zee)")
family_tree.node("Briar", "Briar")
family_tree.node("Gwen", "Gwendelyn (Gwen)")
family_tree.node("Blitz", "Blitz (dog)")
family_tree.node("Paxell", "Paxell (cat)")

family_tree.edges([("Finitian", "Zelia"), ("Adelina", "Zelia"),
                   ("Finitian", "Briar"), ("Adelina", "Briar"),
                   ("Finitian", "Gwen"), ("Adelina", "Gwen")])

# Export family tree
family_tree_path = "/mnt/data/family_tree.png"
family_tree.render(family_tree_path, cleanup=True)

# Character web style diagram
char_web = Digraph("CharacterWeb", format="png")
char_web.attr(size="10")

# Royals
char_web.node("Annabelle", "Annabelle (Anne)")
char_web.node("Elara", "Elara")
char_web.node("Arvidd", "Arvidd")
char_web.node("Ivarna", "Ivarna")

# Companions
char_web.node("Karsten", "Karsten")
char_web.node("Sindre", "Sindre (dog)")
char_web.node("Olav", "Olav")
char_web.node("Søren", "Søren")

# Zelia’s Family
char_web.node("Zelia", "Zelia (Zee)")
char_web.node("Rydric", "Rydric (Ry)")
char_web.node("Finitian", "Finitian (Fin)")
char_web.node("Adelina", "Adelina (Addie/Lina)")
char_web.node("Briar", "Briar")
char_web.node("Gwen", "Gwendelyn (Gwen)")
char_web.node("Blitz", "Blitz (dog)")
char_web.node("Paxell", "Paxell (cat)")

# Connections
char_web.edge("Annabelle", "Elara", label="sisters")
char_web.edge("Annabelle", "Zelia", label="cousins / found family")
char_web.edge("Annabelle", "Karsten", label="friend / love interest")
char_web.edge("Karsten", "Sindre", label="companions")
char_web.edge("Annabelle", "Olav", label="friend")
char_web.edge("Annabelle", "Søren", label="antagonist")
char_web.edge("Zelia", "Rydric", label="close friends")
char_web.edge("Zelia", "Finitian", label="father")
char_web.edge("Zelia", "Adelina", label="mother")
char_web.edge("Zelia", "Briar", label="sister")
char_web.edge("Zelia", "Gwen", label="sister")
char_web.edge("Zelia", "Blitz", label="pet dog")
char_web.edge("Zelia", "Paxell", label="pet cat")

# Export character web
char_web_path = "/mnt/data/character_web.png"
char_web.render(char_web_path, cleanup=True)

family_tree_path, char_web_path
Editor is loading...
Leave a Comment