Skip to content

sara-stojkov/Graph-Visualizer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

174 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graph Visualiser

A web-based graph exploration and visualization tool built with a plugin-based architecture. Load graphs from multiple data sources (CSV, JSON, XML) and explore them interactively through three synchronized views — Tree, Bird's Eye, and Main — using two distinct visualizer styles.

Workspace — Loading & Managing Graphs

Load graphs from CSV, JSON, or XML sources. All active workspaces are listed with their node and edge counts.

Workspace

Block Visualizer

Nodes are rendered as rich attribute cards. Ideal for exploring graphs with detailed node properties.

Block Visualizer

Simple Visualizer

Nodes are rendered as compact circles connected by edges. Best suited for large graphs where structure matters more than individual node details. Click any node to inspect its properties.

Simple Visualizer

Switch between visualizers at any time using the dropdown in the toolbar.

CLI, Search & Filter

The toolbar exposes a search bar for finding nodes by name and a filter input for attribute-based queries (e.g. Age > 30). For more direct control, the built-in CLI at the bottom of the screen lets you create and delete nodes and edges without leaving the visualizer.

CLI


Contributors

  1. Aleksa Ćurčić
  2. Maksim Vasić
  3. Milan Kačarević
  4. Miomir Dujanović
  5. Sara Stojkov

Installation

First, activate your virtual environment from the project root:

Windows:

.venv\Scripts\activate

Unix/Mac:

source .venv/bin/activate

Then run the install script to install all components:

Windows:

scripts/installation/install.bat

Unix/Mac:

./scripts/installation/install.sh

If the script is not executable, run:

chmod +x scripts/installation/install.sh
./scripts/installation/install.sh

Running the Application

Both Django and Flask are fully independent web applications. Each can be run and used on its own. They do not depend on each other.

Running the Django app

cd graph_explorer/django_app
python manage.py runserver

Django will be available at http://127.0.0.1:8000

Running the Flask app

cd graph_explorer/flask_app
python -m run

Flask will be available at http://127.0.0.1:5000

Note

Both apps provide the same functionality independently. You do not need to run both at the same time - each one is a complete standalone application.

About

Python project with Web App used for visualizing different data types as a graph. Supports both data and visual plugins, the ones provided and is open for new ones. Uses Django to provide endpoints.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 65.9%
  • HTML 22.5%
  • JavaScript 11.0%
  • Other 0.6%