obnb icon indicating copy to clipboard operation
obnb copied to clipboard

Add `networkx` as a choice of graph backend

Open RemyLau opened this issue 2 years ago • 0 comments

In the early development of the nleval project, a lightweight graph object was implemented and was used throughout the codebase for the sake of computational and memory efficiencies over networkx. However, there has been a lot of improvement made to the networkx library and it is worth exploring its current state and finding out whether there is a good way to implement backend support using networkx.

Motivation

  • networkx contains comprehensive features for processing graphs.
  • networkx is commonly used by many other libraries for, e.g., plotting
  • The native graph object in nleval is fast, lightweight, and can scale to genome-scale graph efficiently.

Plan

  • [ ] Think of abstraction to allow different graph backend
  • [ ] (add more specifics here)

RemyLau avatar Jan 12 '23 15:01 RemyLau