pygraphistry icon indicating copy to clipboard operation
pygraphistry copied to clipboard

Add shared graphviz/mermaid theme for static docs and plot_static

Open lmeyerov opened this issue 4 weeks ago • 0 comments

Summary

Current graphviz/mermaid examples use ad-hoc styling; visuals vary across RST/MyST/notebooks. plot_static engines now support graphviz-svg/png, graphviz-dot, and mermaid-code (DSL only). We should add a shared theme to keep outputs consistent and reduce snippet boilerplate.

Proposal

  • Define shared theme defaults for graphviz (graph_attr/node_attr/edge_attr) and mermaid (classDef etc.).
  • Consider setting graphviz defaults via conf.py (e.g., graphviz_dot_args) and/or constants (GRAPHVIZ_THEME, MERMAID_THEME) that plot_static examples can opt into.
  • Keep mermaid as DSL-only for now; later consider render path (CLI/JS) if desired.
  • Update one RST, one MyST, and one notebook example to use the theme (graphviz + mermaid) for consistency.

Acceptance Criteria

  • Theme applied consistently in at least one RST, one MyST, and one notebook example.
  • plot_static examples document how to opt into the theme.
  • Docs build still passes (only pre-existing warnings remain).

lmeyerov avatar Dec 01 '25 05:12 lmeyerov