Skip to main content
jaal logo

PyPI version fury.io

Your interactive network visualizing dashboard

Documentation: Here

What is Jaal

Jaal is a python based interactive network visualizing tool built using Dash and Visdcc. Along with the basic features, Jaal also provides multiple option to play with the network data such as searching graph, filtering and even coloring nodes and edges in the graph. And all of this within 2 lines of codes :)

Requirements

Jaal requires following python packages,

  1. Dash
    • dash_core_components
    • dash_html_components
  2. dash_bootstrap_components
  3. visdcc
  4. pandas

Install

Installing Jaal is super easy, just do the following,

pip install jaal

And you are done :)

Note, it's recommended to create a virtual enivornment before installing. This can be easily done using python -m venv myenv and then to activate the env we need,

  1. (Windows) .\\myvenv\\Scripts\\activate.bat
  2. (Linux) source myvenv/bin/activate

Getting started

After installing Jaal, we need to fetch the data and call plot function in Jaal. This can be shown by playing with an included Game of Thrones dataset, as follows,

# import
from jaal import Jaal
from jaal.datasets import load_got
# load the data
edge_df, node_df = load_got()
# init Jaal and run server
Jaal(edge_df, node_df).plot()

Here first we import Jaal main class and the dataset loading function load_got. Later we load the GoT dataset from the datasets included in the package. This gives us two files,

  1. edge_df: its a pandas dataframe with atleast from and to column, which represents the edge relationship between the entities
  2. node_df: its an optional parameter, but should contains a id column with unique node names.

Note, edge_df is mandatory and node_df is optional. Also we can include additional columns in these files which are automatically conidered as edge or node features respectively.

After running the plot, the console will prompt the default localhost address (127:0.0.1:8050) where Jaal is running. Access it to see the following dashboard,

dashboard

Features

At present, the dashboard consist of following sections,

  1. Setting panel: here we can play with the graph data, i further contain following sections,
    • Search: can be used to highlight a node in graph
    • Filter: supports pandas query language and can be used to filter the graph data based on nodes or edge features.
    • Color: can be used to color nodes or edges based on their categorical features. Note, currently only features with at max 20 cardinality are supported.
  2. Graph: the network graph in all its glory :)

Examples

1. Searching

dashboard

2. Filtering

dashboard

3. Coloring

dashboard

Issue tracker

Please report any bug or feature idea using Jaal issue tracker: https://github.com/imohitmayank/jaal/issues

Collaboration

Any type of collaboration is appreciated. It could be testing, development, documentation and other tasks that is useful to the project. Feel free to connect with me regarding this.

Contact

You can connect with me on LinkedIn or mail me at mohitmayank1@gmail.com.

License

Jaal is licensed under the terms of the MIT License (see the file LICENSE).

Metadata

Release files for jaal 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jaal 0.0.6
File Size Uploaded
jaal-0.0.6.tar.gz 8.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jaal 0.0.6
File Interpreter ABI Platform
jaal-0.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 30.2 kB

Release files / jaal-0.0.6.tar.gz

Download URL jaal-0.0.6.tar.gz
Size 8.5 kB
Tags Source
SHA-256 checksum
How to use checksums
88f276cd66518f9f3aec4fcbb915615a38e6d3155ecda51862124fbe4f042db1
BLAKE2b-256 checksum
How to use checksums
47742508598e0d9ff10b7bf98a31c4733de6cda9bb7c7d463e7131e62241623d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.3

Release files / jaal-0.0.6-py3-none-any.whl

Download URL jaal-0.0.6-py3-none-any.whl
Size 21.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
edbe7f81e303adb09f41b4922893e618b5abfc41d3308a872668b98712151ac4
BLAKE2b-256 checksum
How to use checksums
3f5b6279e58e4b143c2a0899ebbd283670ef6e237ced570ff346ea986bdb0d6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.3

Release history Release notifications | RSS feed

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

This release

0.0.6 This release

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page