pygraphistry
pygraphistry copied to clipboard
Add shared graphviz/mermaid theme for static docs and plot_static
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).