MPSPlots


NameMPSPlots JSON
Version 1.5.2.post0 PyPI version JSON
download
home_pageNone
SummaryA matplotlib wrapper for defered plots and plotting styles.
upload_time2024-10-16 21:33:14
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT License Copyright (c) 2020 Martin de Sivry Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords finit-difference matrix
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            MPSPlots
========

.. list-table::
   :widths: 10 25 25
   :header-rows: 0

   * - Meta
     - |python|
     - |docs|
   * - Testing
     - |ci/cd|
     - |coverage|
   * - PyPi
     - |PyPi|
     - |PyPi_download|
   * - Anaconda
     - |anaconda|
     - |anaconda_download|


Overview
********

**MPSPlots** is a personal plotting library developed as a streamlined wrapper around two popular visualization tools: **Matplotlib** for 2D plotting and **PyVista** for 3D visualization.
This library was created with the goal of balancing ease-of-use with flexibility, allowing users to produce consistent plots for scientific publications.
Initially developed to standardize the author’s scientific plots, **MPSPlots** continues to evolve, providing a customizable yet simple interface for a wide range of plotting needs.

Key Features:
- Intuitive and straightforward API, abstracting common plotting tasks.
- High-quality outputs tailored for scientific journals.
- Seamless integration with Matplotlib and PyVista.
- Easily customizable plots without sacrificing flexibility.

The motivation behind this library was to make complex plotting routines more accessible while maintaining the ability to fine-tune results as needed, making it ideal for researchers and scientists who require consistent, publication-ready plots.

----

Installation
************

To install the library from PyPI, simply use `pip`, or `conda`:

.. code:: console

   pip install MPSPlots
   conda install --channels martinpdes mpsplots

For a development version, clone the GitHub repository and install the dependencies manually:

.. code:: console

   git clone https://github.com/MartinPdeS/MPSPlots.git
   cd MPSPlots
   pip install -r requirements/requirements.txt

This setup ensures that you have access to the latest updates and features under active development.

----

Usage
*****

**MPSPlots** can be integrated into your scientific workflow with minimal effort. Here’s a simple example showing how you can create a 2D Matplotlib plot:

.. code:: python

   from MPSPlots.render2D import Scene

   plot = Scene()
   plot.add_line(x_data, y_data, label="Sample Line")
   plot.show()

For more complex 3D visualizations using PyVista:

.. code:: python

   from MPSPlots.render3D import Scene

   plot = Scene()
   plot.add_surface(mesh)
   plot.show()

Whether it's a 2D line chart or a 3D surface plot, **MPSPlots** makes it simple to generate publication-quality visualizations quickly.

----

Testing and Development
***********************

If you want to contribute to the project or test it locally, follow these steps to set up your development environment:

1. Clone the repository:

   .. code:: console

      git clone https://github.com/MartinPdeS/MPSPlots.git
      cd MPSPlots

2. Install dependencies:

   .. code:: console

      pip install -r requirements/requirements.txt

3. Run the tests with coverage:

   .. code:: console

      coverage run --source=MPSPlots --module pytest --verbose tests
      coverage report --show-missing

These commands will ensure that you have all the necessary dependencies and will run the tests, providing you with a detailed report on code coverage and any potential issues.

----

Documentation
*************

Detailed documentation for **MPSPlots** is available `here <https://martinpdes.github.io/MPSPlots/>`_, where you'll find a comprehensive guide to the library's usage, examples, and API references.
Whether you're a beginner or an advanced user, the documentation provides clear instructions and examples to help you get the most out of the library.

----

Contributing
************

**MPSPlots** is an open-source project under continuous development, and contributions are welcome! Whether it's bug fixes, new features, or improvements to documentation, any help is appreciated. If you're interested in collaborating, please feel free to reach out to the author.

If you'd like to contribute:

1. Fork the repository and create your feature branch:

   .. code:: console

      git checkout -b feature-branch

2. Commit your changes and push your branch:

   .. code:: console

      git commit -m "Add new feature"
      git push origin feature-branch

3. Create a Pull Request on GitHub.

----

Contact Information
*******************

As of 2023, **MPSPlots** is actively maintained and open to collaboration.
If you're interested in contributing or have any questions, don't hesitate to reach out.
The author, `Martin Poinsinet de Sivry-Houle <https://github.com/MartinPdeS>`_, can be contacted via:

- **Email**: `martin.poinsinet-de-sivry@polymtl.ca <mailto:martin.poinsinet-de-sivry@polymtl.ca?subject=MPSPlots>`_

The project continues to evolve, and your contributions are encouraged!


----

.. |python| image:: https://img.shields.io/pypi/pyversions/mpsplots.svg
   :alt: Python
   :target: https://www.python.org/

.. |PyPi| image:: https://badge.fury.io/py/MPSPlots.svg
   :alt: PyPi package
   :target: https://pypi.org/project/MPSPlots/

.. |docs| image:: https://github.com/martinpdes/mpsplots/actions/workflows/deploy_documentation.yml/badge.svg
   :target: https://martinpdes.github.io/MPSPlots/
   :alt: Documentation Status

.. |ci/cd| image:: https://github.com/martinpdes/mpsplots/actions/workflows/deploy_coverage.yml/badge.svg
   :target: https://martinpdes.github.io/MPSPlots/actions
   :alt: Unittest Status

.. |coverage| image:: https://raw.githubusercontent.com/MartinPdeS/MPSPlots/python-coverage-comment-action-data/badge.svg
   :alt: Unittest coverage
   :target: https://github.com/MartinPdeS/MPSPlots/actions

.. |PyPi_download| image:: https://img.shields.io/pypi/dm/MPSPlots.svg
   :alt: PyPi version
   :target: https://pypistats.org/packages/mpsplots

.. |anaconda| image:: https://anaconda.org/martinpdes/mpsplots/badges/version.svg
   :alt: Anaconda version
   :target: https://anaconda.org/martinpdes/mpsplots

.. |anaconda_download| image:: https://anaconda.org/martinpdes/mpsplots/badges/downloads.svg
   :alt: Anaconda downloads
   :target: https://anaconda.org/martinpdes/mpsplots

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "MPSPlots",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "finit-difference, matrix",
    "author": null,
    "author_email": "Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/d5/45/174912415cf7000ba7e137850681ed5de06024dda524908776b3db5a46f2/mpsplots-1.5.2.post0.tar.gz",
    "platform": null,
    "description": "MPSPlots\n========\n\n.. list-table::\n   :widths: 10 25 25\n   :header-rows: 0\n\n   * - Meta\n     - |python|\n     - |docs|\n   * - Testing\n     - |ci/cd|\n     - |coverage|\n   * - PyPi\n     - |PyPi|\n     - |PyPi_download|\n   * - Anaconda\n     - |anaconda|\n     - |anaconda_download|\n\n\nOverview\n********\n\n**MPSPlots** is a personal plotting library developed as a streamlined wrapper around two popular visualization tools: **Matplotlib** for 2D plotting and **PyVista** for 3D visualization.\nThis library was created with the goal of balancing ease-of-use with flexibility, allowing users to produce consistent plots for scientific publications.\nInitially developed to standardize the author\u2019s scientific plots, **MPSPlots** continues to evolve, providing a customizable yet simple interface for a wide range of plotting needs.\n\nKey Features:\n- Intuitive and straightforward API, abstracting common plotting tasks.\n- High-quality outputs tailored for scientific journals.\n- Seamless integration with Matplotlib and PyVista.\n- Easily customizable plots without sacrificing flexibility.\n\nThe motivation behind this library was to make complex plotting routines more accessible while maintaining the ability to fine-tune results as needed, making it ideal for researchers and scientists who require consistent, publication-ready plots.\n\n----\n\nInstallation\n************\n\nTo install the library from PyPI, simply use `pip`, or `conda`:\n\n.. code:: console\n\n   pip install MPSPlots\n   conda install --channels martinpdes mpsplots\n\nFor a development version, clone the GitHub repository and install the dependencies manually:\n\n.. code:: console\n\n   git clone https://github.com/MartinPdeS/MPSPlots.git\n   cd MPSPlots\n   pip install -r requirements/requirements.txt\n\nThis setup ensures that you have access to the latest updates and features under active development.\n\n----\n\nUsage\n*****\n\n**MPSPlots** can be integrated into your scientific workflow with minimal effort. Here\u2019s a simple example showing how you can create a 2D Matplotlib plot:\n\n.. code:: python\n\n   from MPSPlots.render2D import Scene\n\n   plot = Scene()\n   plot.add_line(x_data, y_data, label=\"Sample Line\")\n   plot.show()\n\nFor more complex 3D visualizations using PyVista:\n\n.. code:: python\n\n   from MPSPlots.render3D import Scene\n\n   plot = Scene()\n   plot.add_surface(mesh)\n   plot.show()\n\nWhether it's a 2D line chart or a 3D surface plot, **MPSPlots** makes it simple to generate publication-quality visualizations quickly.\n\n----\n\nTesting and Development\n***********************\n\nIf you want to contribute to the project or test it locally, follow these steps to set up your development environment:\n\n1. Clone the repository:\n\n   .. code:: console\n\n      git clone https://github.com/MartinPdeS/MPSPlots.git\n      cd MPSPlots\n\n2. Install dependencies:\n\n   .. code:: console\n\n      pip install -r requirements/requirements.txt\n\n3. Run the tests with coverage:\n\n   .. code:: console\n\n      coverage run --source=MPSPlots --module pytest --verbose tests\n      coverage report --show-missing\n\nThese commands will ensure that you have all the necessary dependencies and will run the tests, providing you with a detailed report on code coverage and any potential issues.\n\n----\n\nDocumentation\n*************\n\nDetailed documentation for **MPSPlots** is available `here <https://martinpdes.github.io/MPSPlots/>`_, where you'll find a comprehensive guide to the library's usage, examples, and API references.\nWhether you're a beginner or an advanced user, the documentation provides clear instructions and examples to help you get the most out of the library.\n\n----\n\nContributing\n************\n\n**MPSPlots** is an open-source project under continuous development, and contributions are welcome! Whether it's bug fixes, new features, or improvements to documentation, any help is appreciated. If you're interested in collaborating, please feel free to reach out to the author.\n\nIf you'd like to contribute:\n\n1. Fork the repository and create your feature branch:\n\n   .. code:: console\n\n      git checkout -b feature-branch\n\n2. Commit your changes and push your branch:\n\n   .. code:: console\n\n      git commit -m \"Add new feature\"\n      git push origin feature-branch\n\n3. Create a Pull Request on GitHub.\n\n----\n\nContact Information\n*******************\n\nAs of 2023, **MPSPlots** is actively maintained and open to collaboration.\nIf you're interested in contributing or have any questions, don't hesitate to reach out.\nThe author, `Martin Poinsinet de Sivry-Houle <https://github.com/MartinPdeS>`_, can be contacted via:\n\n- **Email**: `martin.poinsinet-de-sivry@polymtl.ca <mailto:martin.poinsinet-de-sivry@polymtl.ca?subject=MPSPlots>`_\n\nThe project continues to evolve, and your contributions are encouraged!\n\n\n----\n\n.. |python| image:: https://img.shields.io/pypi/pyversions/mpsplots.svg\n   :alt: Python\n   :target: https://www.python.org/\n\n.. |PyPi| image:: https://badge.fury.io/py/MPSPlots.svg\n   :alt: PyPi package\n   :target: https://pypi.org/project/MPSPlots/\n\n.. |docs| image:: https://github.com/martinpdes/mpsplots/actions/workflows/deploy_documentation.yml/badge.svg\n   :target: https://martinpdes.github.io/MPSPlots/\n   :alt: Documentation Status\n\n.. |ci/cd| image:: https://github.com/martinpdes/mpsplots/actions/workflows/deploy_coverage.yml/badge.svg\n   :target: https://martinpdes.github.io/MPSPlots/actions\n   :alt: Unittest Status\n\n.. |coverage| image:: https://raw.githubusercontent.com/MartinPdeS/MPSPlots/python-coverage-comment-action-data/badge.svg\n   :alt: Unittest coverage\n   :target: https://github.com/MartinPdeS/MPSPlots/actions\n\n.. |PyPi_download| image:: https://img.shields.io/pypi/dm/MPSPlots.svg\n   :alt: PyPi version\n   :target: https://pypistats.org/packages/mpsplots\n\n.. |anaconda| image:: https://anaconda.org/martinpdes/mpsplots/badges/version.svg\n   :alt: Anaconda version\n   :target: https://anaconda.org/martinpdes/mpsplots\n\n.. |anaconda_download| image:: https://anaconda.org/martinpdes/mpsplots/badges/downloads.svg\n   :alt: Anaconda downloads\n   :target: https://anaconda.org/martinpdes/mpsplots\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2020 Martin de Sivry  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "A matplotlib wrapper for defered plots and plotting styles.",
    "version": "1.5.2.post0",
    "project_urls": null,
    "split_keywords": [
        "finit-difference",
        " matrix"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "dd12d5b8b31b65924e64937c938bb33b5a520aecc6b0bd4b625b60adad7c7992",
                "md5": "b3fecc9b62f269f49dbaefe494463a4a",
                "sha256": "ebd91394e8f27039ca9b6b4cd02fe7bb609bb06243c57bfaba85f5d1e3b0de54"
            },
            "downloads": -1,
            "filename": "MPSPlots-1.5.2.post0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b3fecc9b62f269f49dbaefe494463a4a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 1433878,
            "upload_time": "2024-10-16T21:33:11",
            "upload_time_iso_8601": "2024-10-16T21:33:11.872334Z",
            "url": "https://files.pythonhosted.org/packages/dd/12/d5b8b31b65924e64937c938bb33b5a520aecc6b0bd4b625b60adad7c7992/MPSPlots-1.5.2.post0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d545174912415cf7000ba7e137850681ed5de06024dda524908776b3db5a46f2",
                "md5": "75a1d4b3b8d19a4c60388a99e902b1d0",
                "sha256": "e76b2413886356265474d44ff965a7aa453d6e9f36651ecef815dc5a1a333c8b"
            },
            "downloads": -1,
            "filename": "mpsplots-1.5.2.post0.tar.gz",
            "has_sig": false,
            "md5_digest": "75a1d4b3b8d19a4c60388a99e902b1d0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 3475771,
            "upload_time": "2024-10-16T21:33:14",
            "upload_time_iso_8601": "2024-10-16T21:33:14.054901Z",
            "url": "https://files.pythonhosted.org/packages/d5/45/174912415cf7000ba7e137850681ed5de06024dda524908776b3db5a46f2/mpsplots-1.5.2.post0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-16 21:33:14",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "mpsplots"
}
        
Elapsed time: 1.79047s