Skip to content

Latest commit

 

History

History
executable file
·
96 lines (64 loc) · 1.98 KB

README.md

File metadata and controls

executable file
·
96 lines (64 loc) · 1.98 KB

thebrain2dot

TheBrain10 .json (File>Export>JSON Files ) to .dot visualization with Graphviz

  • Python 3 support
  • UTF-8 support
  • Nodes (thoughts.json)
    • support shapes, colors
    • size depends on PageRank centrality
  • Links (links.json)
    • support types, directions, colors
  • Layout
    • support layout (algorithm), splines

Before:

After:

More Complicated Example:

API

Example: see test/test.py

brain_json2dot(thoughts_path, links_path, dot_path='thebrain.dot', png_path='thebrain.png', 
                layout='dot', bg_color='grey22', node_shape='circle', node_color='white', 
                edge_default_color='white', edge_splines='', edge_font_size=10)

Dependencies

Graphviz

Ubuntu:

apt install -y graphviz

Windows:

TODO

Pygraphviz

Ubuntu:

apt-get install -y graphviz-dev
pip install pygraphviz

Windows:

TODO

Networkx

pip install networkx

Fonts (When Necessary)

If a language involving non-ascii characters is not correctly shown in the visualization, try to install corresponding fonts.

Example (for Chinese):

Ubuntu:

apt-get install -y fonts-wqy-microhei

TODO

  • Doc: parsing of thebrain10's thoughts.json & links.json
  • Doc: Windows / Mac installation
  • Dev: SVG
  • Dev: publish package to PYPI
  • Dev: correct color mapping (thebrain exported json seems to have bugs about color)
  • Layout: label / tag
  • Layout: parent / sibling location restriction in visualization
  • Layout: community detection