https://github.com/bluebrain/vascpy

Python library for reading, writing, and manipulating large-scale vasculature graphs.

https://github.com/bluebrain/vascpy

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    3 of 3 committers (100.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.8%) to scientific vocabulary

Keywords from Contributors

neurons
Last synced: 10 months ago · JSON representation

Repository

Python library for reading, writing, and manipulating large-scale vasculature graphs.

Basic Info
  • Host: GitHub
  • Owner: BlueBrain
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 31.6 MB
Statistics
  • Stars: 5
  • Watchers: 3
  • Forks: 3
  • Open Issues: 1
  • Releases: 3
Archived
Created over 4 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing License Authors

README.md

[!WARNING] The Blue Brain Project concluded in December 2024, so development has ceased under the BlueBrain GitHub organization. Future development will take place at: https://github.com/openbraininstitute/vascpy

vascpy Logo

vascpy

vascpy is a python library for reading, writing, and manipulating large-scale vasculature graphs. There are two alternative graph representations available: a section-centered and an edge-centered one. It supports the following respective formats:

The vascpy library provides two classes: PointVasculature and SectionVasculature that allow for reading and writing edge-centered and section-centered datasets respectively, as well as converting between them.

Documentation

vascpy documentation is built and hosted on readthedocs. * latest snapshot

Usage

Load and write an h5 morphology file:

```python from vascpy import SectionVasculature

v = SectionVasculature.load("sample.h5")

print(v.points) print(v.diameters) print(v.connectivity) print(v.sections)

v.save("sample2.h5") ```

Load and write an h5 SONATA file: ```python from vascpy import PointVasculature

v = PointVasculature.loadsonata("samplesonata.h5")

print(v.nodeproperties) print(v.edgeproperties) print(v.points) print(v.edges) print(v.edgetypes) print(v.segmentpoints) print(v.segment_diameters) print(v.area) print(v.volume)

v.savesonata("samplesonata2.h5") ```

Representation conversions

vascpy allows the conversion between the two representations:

```python from vascpy import PointVasculature pointvasculature = PointVasculature.loadhdf5("sample_sonata.h5")

sectionvasculature = pointvasculature.assectiongraph() pointvasculature = sectionvasculature.aspointgraph() ```

Create and save an edge-centered vascular graph

```python import numpy as np import pandas as pd from vascpy import PointVasculature

node_properties = DataFrame({ 'x': np.array([0., 1., 2.]), 'y': np.array([3., 4., 5.]), 'z': np.array([6., 7., 8.]), 'diameter': np.array([0.1, 0.2, 0.3]) })

edgeproperties = pd.DataFrame({ 'startnode': np.array([0, 0, 1]), 'end_node': np.array([1, 2, 2]), 'type': np.array([1, 1, 1]) })

v = PointVasculature(nodeproperties=nodeproperties, edgeproperties=edgeproperties) v.savesonata('myvasculature.h5') ```

Funding & Acknowledgements

The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.

Copyright (c) 2022-2024 Blue Brain Project/EPFL

Owner

  • Name: The Blue Brain Project
  • Login: BlueBrain
  • Kind: organization
  • Email: bbp.opensource@epfl.ch
  • Location: Geneva, Switzerland

Open Source Software produced and used by the Blue Brain Project

GitHub Events

Total
  • Watch event: 3
  • Push event: 1
  • Fork event: 1
Last Year
  • Watch event: 3
  • Push event: 1
  • Fork event: 1

Committers

Last synced: over 3 years ago

All Time
  • Total Commits: 54
  • Total Committers: 3
  • Avg Commits per committer: 18.0
  • Development Distribution Score (DDS): 0.093
Top Committers
Name Email Commits
Eleftherios Zisis e****s@e****h 49
alex4200 a****z@e****h 4
Eleftherios Zisis e****i@e****h 1
Committer Domains (Top 20 + Academic)
epfl.ch: 3

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 2
  • Total pull requests: 17
  • Average time to close issues: 11 months
  • Average time to close pull requests: 1 day
  • Total issue authors: 1
  • Total pull request authors: 4
  • Average comments per issue: 1.5
  • Average comments per pull request: 0.59
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 1.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • marwan-abdellah (2)
Pull Request Authors
  • eleftherioszisis (15)
  • alex4200 (3)
  • bbpgithubaudit (3)
  • penguinpee (2)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

setup.py pypi
  • click >=8.0
  • h5py >=3.4.0
  • libsonata >=0.1.8
  • morphio >=3.0.0
  • numpy >=1.17
  • pandas >=1.0.0
  • scipy >=1.0.0
.github/workflows/publish-sdist.yml actions
  • actions/checkout master composite
  • actions/setup-python v2 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/run-tox.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • codecov/codecov-action v1 composite
pyproject.toml pypi