GenogramMaker.DOT (GenogramMaker v0.1.0)

Copy Markdown

Render a GenogramMaker to Graphviz DOT source.

Conventions applied:

  • shapes — :male → square, :female → circle, :unknown → diamond;
  • deceased people are filled grey and the proband gets a double outline;
  • a union is a small point node with the partners on the same rank; divorce and separation add // and / markers, cohabitation is dashed, engagement dotted;
  • children hang below the union point;
  • bonds are non-constraining coloured edges (close green, distance/cutoff dashed, conflict/hostility red), so they never distort the generational layout.

Graphviz cannot draw the literal "X through the symbol" used for deceased people on paper, so this renderer shades them grey and shows the death year instead.

Summary

Functions

Encode a genogram as a DOT digraph string.

Functions

encode(genogram)

@spec encode(GenogramMaker.t()) :: String.t()

Encode a genogram as a DOT digraph string.