{"id":26754917,"url":"https://github.com/neo4j/python-graph-visualization","last_synced_at":"2026-02-20T17:09:10.261Z","repository":{"id":284914943,"uuid":"886584961","full_name":"neo4j/python-graph-visualization","owner":"neo4j","description":"A Python package for creating interactive graph visualizations","archived":false,"fork":false,"pushed_at":"2026-02-06T14:33:54.000Z","size":17306,"stargazers_count":46,"open_issues_count":8,"forks_count":10,"subscribers_count":7,"default_branch":"main","last_synced_at":"2026-02-07T22:23:19.893Z","etag":null,"topics":["data-visualization","graph-visualization","graphs","jupyter-notebooks","python","visualization"],"latest_commit_sha":null,"homepage":"https://neo4j.com/docs/nvl-python/preview/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neo4j.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-11-11T08:40:40.000Z","updated_at":"2026-02-06T14:33:58.000Z","dependencies_parsed_at":"2025-05-05T13:43:09.255Z","dependency_job_id":"c3cfce5b-aa53-4534-a26a-f1b568a80d03","html_url":"https://github.com/neo4j/python-graph-visualization","commit_stats":null,"previous_names":["neo4j/python-graph-visualization"],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/neo4j/python-graph-visualization","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fpython-graph-visualization","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fpython-graph-visualization/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fpython-graph-visualization/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fpython-graph-visualization/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neo4j","download_url":"https://codeload.github.com/neo4j/python-graph-visualization/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fpython-graph-visualization/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29658170,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-20T16:33:43.953Z","status":"ssl_error","status_checked_at":"2026-02-20T16:33:43.598Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data-visualization","graph-visualization","graphs","jupyter-notebooks","python","visualization"],"created_at":"2025-03-28T14:11:37.218Z","updated_at":"2026-02-20T17:09:10.255Z","avatar_url":"https://github.com/neo4j.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Graph Visualization for Python by Neo4j\n\n[![Latest version](https://img.shields.io/pypi/v/neo4j-viz)](https://pypi.org/project/neo4j-viz/)\n[![PyPI downloads month](https://img.shields.io/pypi/dm/neo4j-viz)](https://pypi.org/project/neo4j-viz/)\n![Python versions](https://img.shields.io/pypi/pyversions/neo4j-viz)\n[![Documentation](https://img.shields.io/badge/Documentation-latest-blue)](https://neo4j.com/docs/python-graph-visualization/)\n[![Discord](https://img.shields.io/discord/787399249741479977?label=Chat\u0026logo=discord)](https://discord.gg/neo4j)\n[![Community forum](https://img.shields.io/website?down_color=lightgrey\u0026down_message=offline\u0026label=Forums\u0026logo=discourse\u0026up_color=green\u0026up_message=online\u0026url=https%3A%2F%2Fcommunity.neo4j.com%2F)](https://community.neo4j.com)\n[![License](https://img.shields.io/pypi/l/neo4j-viz)](https://pypi.org/project/neo4j-viz/)\n\n`neo4j-viz` is a Python package for creating interactive graph visualizations.\n\nThe `render` method returns an `IPython.display.HTML` object that can be viewed directly in a Jupyter Notebook or Streamlit application.\nFor an interactive widget experience, use `render_widget()` which returns an anywidget-based `GraphWidget` with two-way data sync.\nAlternatively, you can export the output to a file and view it in a web browser.\n\nThe package wraps the [Neo4j Visualization JavaScript library (NVL)](https://neo4j.com/docs/nvl/current/).\n\n![Example Graph](examples/example_graph.png)\n\n## Some notable features\n\n- Easy to import graphs represented as:\n  - projections in the Neo4j Graph Data Science (GDS) library\n  - graphs from Neo4j query results\n  - pandas DataFrames\n- Node features:\n  - Sizing\n  - Colors\n  - Captions\n  - Pinning\n  - On hover tooltip\n- Relationship features:\n  - Colors\n  - Captions\n  - On hover tooltip\n- Graph features:\n  - Zooming\n  - Panning\n  - Moving nodes\n  - Using different layouts\n- Additional convenience functionality for:\n  - Resizing nodes, optionally including scale normalization\n  - Coloring nodes based on a property\n  - Toggle whether nodes should be pinned or not\n\nPlease note that this list is by no means exhaustive.\n\n## Getting started\n\n### Installation\n\nSimply install with pip:\n\n```sh\npip install neo4j-viz\n```\n\n### Basic usage\n\nWe will use a small toy graph representing the purchase history of a few people and products.\n\nWe start by instantiating the [Nodes](https://neo4j.com/docs/nvl-python/preview/api-reference/node.html) and\n[Relationships](https://neo4j.com/docs/nvl-python/preview/api-reference/relationship.html) we want in our graph.\nThe only mandatory fields for a node are the \"id\", and \"source\" and \"target\" for a relationship.\nBut the other fields can optionally be used to customize the appearance of the nodes and relationships in the\nvisualization.\n\nLastly we create a\n[VisualizationGraph](https://neo4j.com/docs/nvl-python/preview/api-reference/visualization-graph.html) object with the\nnodes and relationships we created, and call its `render` method to display the graph.\n\n```python\nfrom neo4j_viz import Node, Relationship, VisualizationGraph\n\nnodes = [\n    Node(id=0, size=10, caption=\"Person\"),\n    Node(id=1, size=10, caption=\"Product\"),\n    Node(id=2, size=20, caption=\"Product\"),\n    Node(id=3, size=10, caption=\"Person\"),\n    Node(id=4, size=10, caption=\"Product\"),\n]\nrelationships = [\n    Relationship(\n        source=0,\n        target=1,\n        caption=\"BUYS\",\n    ),\n    Relationship(\n        source=0,\n        target=2,\n        caption=\"BUYS\",\n    ),\n    Relationship(\n        source=3,\n        target=2,\n        caption=\"BUYS\",\n    ),\n]\n\nVG = VisualizationGraph(nodes=nodes, relationships=relationships)\n\nVG.render()\n```\n\nThis will return an `IPython.display.HTML` object that can be rendered in a Jupyter Notebook or Streamlit application.\nFor an interactive Jupyter widget, use `VG.render_widget()` instead.\n\nPlease refer to the [documentation](https://neo4j.com/docs/nvl-python/preview/) for more details on the API and usage.\n\n### Examples\n\nFor some Jupyter Notebook and streamlit examples, checkout the [/examples](/examples) directory.\n\n## Contributing\n\nIf you would like to contribute to this project, please follow our [Contributor Guidelines](./CONTRIBUTING.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneo4j%2Fpython-graph-visualization","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneo4j%2Fpython-graph-visualization","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneo4j%2Fpython-graph-visualization/lists"}