alias4sbml


Namealias4sbml JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/adelhpour/Alias4SBML
SummaryCreate alias nodes for heavily connected nodes in an SBML model
upload_time2025-02-16 08:02:10
maintainerNone
docs_urlNone
authorAdel Heydarabadipour
requires_python>=3.8
licenseNone
keywords
VCS
bugtrack_url
requirements libsbml SBMLDiagrams tellurium smblnetwork
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Alias4SBML

Alias4SBML is a Python package designed to improve the visualization of biological networks formatted in SBML (Systems Biology Markup Language). It addresses the challenge of cluttered network visualizations by generating alias nodes—duplicate representations of highly connected molecular components. These alias nodes redistribute interactions, reducing visual congestion and enhancing the clarity of biological models, particularly those with dense connectivity and overlapping interactions.

## Features

- **Alias Nodes for Improved Visualization:** Generate alias nodes—duplicate representations of highly connected genes, proteins, or other molecular components—to alleviate visual congestion in biological networks. This helps to distribute interactions more evenly across the network, preserving the clarity of functional relationships.
  
- **Seamless SBML Integration:** Alias4SBML integrates with SBMLDiagrams to improve the readability of SBML-formatted models. This integration is especially useful for models lacking predefined layouts, enhancing the visual clarity of complex networks without compromising structural integrity.

- **Customizable Alias Node Generation:** Provides flexibility for users to select which molecular components should be represented as alias nodes. Additionally, users can define connectivity thresholds, allowing for tailored alias node generation that fits the specific needs of their biological model.

- **Scalable and Efficient:** Alias4SBML is designed to handle both small and large-scale models. Whether you are working with a network containing dozens of species or hundreds, the package significantly improves model readability by reducing edge lengths and minimizing visual clutter.

## Installation

To install Alias4SBML, simply run the following command:

```bash
pip install alias4sbml
```


## Usage

```python
import alias4sbml

# create a model
model = '''
J0: S1 -> S2;
J1: S1 -> S3;
J2: S1 -> S4 + S5;
'''

# Load your SBML model
a4sbml = alias4sbml.load(model)

# Generate alias nodes for the model
a4sbml.create_alias(species="S1", max_species_connections=1)

# Visualize the modified model
a4sbml.draw("./test1.png")
```

## Customization

Alias4SBML provides several options for customizing the alias node generation process. Users can specify the molecular components to include in alias nodes, set connectivity thresholds for alias node creation, and adjust the appearance of alias nodes in the network visualization.

```python
import alias4sbml

# create a model
model = '''
J0: A -> B;
J1: A -> C;
J2: A -> B + C;
J3: B -> A + C;
J4: C -> A + B;
'''

# Load your SBML model
model = alias4sbml.load(model)

# Define the molecular components to include in alias nodes
components = ['A', 'B', 'C']

# Set the connectivity threshold for alias node generation
threshold = 1

#load the model
a4sbml = alias4sbml.load(model)
    
# Generate alias nodes with custom settings
model_with_alias_nodes = a4sbml.create_alias(components, threshold)

# Visualize the modified model
a4sbml.draw(model_with_alias_nodes)
```

## Contributing

If you would like to contribute to Alias4SBML, please open an issue or submit a pull request on the [GitHub repository](https://github.com/adelhpour/Alias4SBML).

## License

This project is licensed under the MIT License - see the [LICENSE](https://github.com/adelhpour/Alias4SBML/blob/develop/LICENSE) file for details.

[//]: # (ToDo: Add citation)
[//]: # (## Citation)

[//]: # ()
[//]: # (If you use Alias4SBML in your research, please cite the following paper:)

[//]: # ()
[//]: # (```)

[//]: # (Add citation here)

[//]: # (```)

## Contact

For questions or support, please open an issue on the [GitHub repository](https://github.com/adelhpour/Alias4SBML).

```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/adelhpour/Alias4SBML",
    "name": "alias4sbml",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "Adel Heydarabadipour",
    "author_email": "adelhp@uw.edu",
    "download_url": null,
    "platform": null,
    "description": "# Alias4SBML\n\nAlias4SBML is a Python package designed to improve the visualization of biological networks formatted in SBML (Systems Biology Markup Language). It addresses the challenge of cluttered network visualizations by generating alias nodes\u2014duplicate representations of highly connected molecular components. These alias nodes redistribute interactions, reducing visual congestion and enhancing the clarity of biological models, particularly those with dense connectivity and overlapping interactions.\n\n## Features\n\n- **Alias Nodes for Improved Visualization:** Generate alias nodes\u2014duplicate representations of highly connected genes, proteins, or other molecular components\u2014to alleviate visual congestion in biological networks. This helps to distribute interactions more evenly across the network, preserving the clarity of functional relationships.\n  \n- **Seamless SBML Integration:** Alias4SBML integrates with SBMLDiagrams to improve the readability of SBML-formatted models. This integration is especially useful for models lacking predefined layouts, enhancing the visual clarity of complex networks without compromising structural integrity.\n\n- **Customizable Alias Node Generation:** Provides flexibility for users to select which molecular components should be represented as alias nodes. Additionally, users can define connectivity thresholds, allowing for tailored alias node generation that fits the specific needs of their biological model.\n\n- **Scalable and Efficient:** Alias4SBML is designed to handle both small and large-scale models. Whether you are working with a network containing dozens of species or hundreds, the package significantly improves model readability by reducing edge lengths and minimizing visual clutter.\n\n## Installation\n\nTo install Alias4SBML, simply run the following command:\n\n```bash\npip install alias4sbml\n```\n\n\n## Usage\n\n```python\nimport alias4sbml\n\n# create a model\nmodel = '''\nJ0: S1 -> S2;\nJ1: S1 -> S3;\nJ2: S1 -> S4 + S5;\n'''\n\n# Load your SBML model\na4sbml = alias4sbml.load(model)\n\n# Generate alias nodes for the model\na4sbml.create_alias(species=\"S1\", max_species_connections=1)\n\n# Visualize the modified model\na4sbml.draw(\"./test1.png\")\n```\n\n## Customization\n\nAlias4SBML provides several options for customizing the alias node generation process. Users can specify the molecular components to include in alias nodes, set connectivity thresholds for alias node creation, and adjust the appearance of alias nodes in the network visualization.\n\n```python\nimport alias4sbml\n\n# create a model\nmodel = '''\nJ0: A -> B;\nJ1: A -> C;\nJ2: A -> B + C;\nJ3: B -> A + C;\nJ4: C -> A + B;\n'''\n\n# Load your SBML model\nmodel = alias4sbml.load(model)\n\n# Define the molecular components to include in alias nodes\ncomponents = ['A', 'B', 'C']\n\n# Set the connectivity threshold for alias node generation\nthreshold = 1\n\n#load the model\na4sbml = alias4sbml.load(model)\n    \n# Generate alias nodes with custom settings\nmodel_with_alias_nodes = a4sbml.create_alias(components, threshold)\n\n# Visualize the modified model\na4sbml.draw(model_with_alias_nodes)\n```\n\n## Contributing\n\nIf you would like to contribute to Alias4SBML, please open an issue or submit a pull request on the [GitHub repository](https://github.com/adelhpour/Alias4SBML).\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](https://github.com/adelhpour/Alias4SBML/blob/develop/LICENSE) file for details.\n\n[//]: # (ToDo: Add citation)\n[//]: # (## Citation)\n\n[//]: # ()\n[//]: # (If you use Alias4SBML in your research, please cite the following paper:)\n\n[//]: # ()\n[//]: # (```)\n\n[//]: # (Add citation here)\n\n[//]: # (```)\n\n## Contact\n\nFor questions or support, please open an issue on the [GitHub repository](https://github.com/adelhpour/Alias4SBML).\n\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Create alias nodes for heavily connected nodes in an SBML model",
    "version": "0.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/adelhpour/Alias4SBML/issues",
        "Homepage": "https://github.com/adelhpour/Alias4SBML"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6724ba0a1dab203274e178b23e4bb3a53ea57f99245cf89ebae90663e02d5fa4",
                "md5": "06f4d4425583dcf214e991db00a408db",
                "sha256": "4da1405f1b9f5fbe666ceda0ecd00b51858139d95c97fbf7961c4ad0a6bb17bd"
            },
            "downloads": -1,
            "filename": "alias4sbml-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "06f4d4425583dcf214e991db00a408db",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 8895,
            "upload_time": "2025-02-16T08:02:10",
            "upload_time_iso_8601": "2025-02-16T08:02:10.305028Z",
            "url": "https://files.pythonhosted.org/packages/67/24/ba0a1dab203274e178b23e4bb3a53ea57f99245cf89ebae90663e02d5fa4/alias4sbml-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-16 08:02:10",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "adelhpour",
    "github_project": "Alias4SBML",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "libsbml",
            "specs": []
        },
        {
            "name": "SBMLDiagrams",
            "specs": []
        },
        {
            "name": "tellurium",
            "specs": []
        },
        {
            "name": "smblnetwork",
            "specs": []
        }
    ],
    "lcname": "alias4sbml"
}
        
Elapsed time: 1.29897s