-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Graph model docs - port graphs & segment graphs #43
base: main
Are you sure you want to change the base?
Conversation
I think this is a decent first pass at describing the data model. I think if I didn't know about gen but were knowledgeable about coding and bioinformatics, this would be helpful. I think longer term it might be good to extract the diagrams and explanations from the python code and put them in a separate doc that isn't a notebook. If I were trying to understand the data model I'd be wondering why it's being laid out in python when the gen code is in rust, although I understand it can help to make the details clearer when explaining the model. |
Instead of checking in a db file, could you maybe instead add the fasta or whatever files you used to create it into a subdirectory of |
The DB file shouldn't have gotten added, I had my setup wrong. |
@dkhofer I'll convert this to a regular markdown file and refer to saved SVG files instead of the notebook. On the rust vs python confusion: can I keep the python notebook that generated the SVGs on the repo, or keep that out too? |
I'm fine with keeping the python notebook. Maybe add a comment at the top saying it's a python port of the rust models/logic? |
Python notebook to help settle model questions. The port graph section describes the current model (I think), with the exception that I do give sequence nodes their own index to allow multiple nodes to reference the same hash. The segment graph section describes how to convert from the port graph format to something you'd see in a GFA. Each model has their own strengths (e.g. not needing node splitting in the port model, compatibility with graph aligners in the segment model). Let me know what you think of the visualizations, it's really graphviz doing the heavy lifting, so if needed we could have the Rust client output a dot file for graphviz too.