interactive-figure


Nameinteractive-figure JSON
Version 0.4.1 PyPI version JSON
download
home_pageNone
SummaryCreate interactive Matplotlib figures!
upload_time2024-10-22 12:19:41
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Interactive Figure

This package serves for students to learn the basics of Python, Matplotlib and setting up reaction time experiments (visual search task, Stroop task, etc.). For a more accurate timing environment one should refer to e.g. [PsychoPy](https://www.psychopy.org/).

This is currently used at the University of Amsterdam (UvA) in the course *Introduction to Python Programming for Neuroscientists*.

Package created using [Hatch](https://hatch.pypa.io).

## Installation

```shell
pip install interactive-figure
```

## Usage

```python
from interactive_figure import interactive_figure

interactive_figure.create()
# Wait until user input is received.
interactive_figure.wait_for_interaction()
key = interactive_figure.get_last_key_press()
print(f"Pressed key: {key}")
interactive_figure.close()
```

Demos can be found in the *demo* folder on GitHub.

## Limitations

- Waiting for user input will not work in Jupyter Notebooks and the interactive interpreter due to the way Matplotlib handles events.
- Automated testing is hard since tests should cover multiple backends (macosx, QtAgg, Tkgg) on multiple platforms (Windows, macOS, Linux). Tips are very welcome!

## Development

```bash
# Setup
pipx install hatch
hatch shell

# Build
hatch version fix
hatch build -c
./generate_docs.sh

# Publish
hatch publish
```

## Links

- [GitHub](https://github.com/teuncm/interactive-figure)
- [PyPI](https://pypi.org/project/interactive-figure/)
- [Documentation](https://teuncm.github.io/interactive-figure/autoapi/interactive_figure/interactive_figure/index.html)
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "interactive-figure",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "Teun Mathijssen <teun.c.mathijssen@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/23/41/60c68c87561e7d2af8e6be72e17e360990380c3de5b5f8ebddbfe5ad41cd/interactive_figure-0.4.1.tar.gz",
    "platform": null,
    "description": "# Interactive Figure\n\nThis package serves for students to learn the basics of Python, Matplotlib and setting up reaction time experiments (visual search task, Stroop task, etc.). For a more accurate timing environment one should refer to e.g. [PsychoPy](https://www.psychopy.org/).\n\nThis is currently used at the University of Amsterdam (UvA) in the course *Introduction to Python Programming for Neuroscientists*.\n\nPackage created using [Hatch](https://hatch.pypa.io).\n\n## Installation\n\n```shell\npip install interactive-figure\n```\n\n## Usage\n\n```python\nfrom interactive_figure import interactive_figure\n\ninteractive_figure.create()\n# Wait until user input is received.\ninteractive_figure.wait_for_interaction()\nkey = interactive_figure.get_last_key_press()\nprint(f\"Pressed key: {key}\")\ninteractive_figure.close()\n```\n\nDemos can be found in the *demo* folder on GitHub.\n\n## Limitations\n\n- Waiting for user input will not work in Jupyter Notebooks and the interactive interpreter due to the way Matplotlib handles events.\n- Automated testing is hard since tests should cover multiple backends (macosx, QtAgg, Tkgg) on multiple platforms (Windows, macOS, Linux). Tips are very welcome!\n\n## Development\n\n```bash\n# Setup\npipx install hatch\nhatch shell\n\n# Build\nhatch version fix\nhatch build -c\n./generate_docs.sh\n\n# Publish\nhatch publish\n```\n\n## Links\n\n- [GitHub](https://github.com/teuncm/interactive-figure)\n- [PyPI](https://pypi.org/project/interactive-figure/)\n- [Documentation](https://teuncm.github.io/interactive-figure/autoapi/interactive_figure/interactive_figure/index.html)",
    "bugtrack_url": null,
    "license": null,
    "summary": "Create interactive Matplotlib figures!",
    "version": "0.4.1",
    "project_urls": {
        "Documentation": "https://teuncm.github.io/interactive-figure/autoapi/interactive_figure/interactive_figure/index.html",
        "Issues": "https://github.com/teuncm/interactive-figure/issues",
        "Source": "https://github.com/teuncm/interactive-figure"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c55ecb55aa2588762476af494fed8c92c2558f895b36fdd55ed719c0f8007807",
                "md5": "2fa3b862bcb64d0cb8a19b51ad165140",
                "sha256": "8bfd2150144fa88278087d8927e023a750b5ddc90f8299259bc6284e2ac8da1e"
            },
            "downloads": -1,
            "filename": "interactive_figure-0.4.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2fa3b862bcb64d0cb8a19b51ad165140",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 5856,
            "upload_time": "2024-10-22T12:19:38",
            "upload_time_iso_8601": "2024-10-22T12:19:38.582644Z",
            "url": "https://files.pythonhosted.org/packages/c5/5e/cb55aa2588762476af494fed8c92c2558f895b36fdd55ed719c0f8007807/interactive_figure-0.4.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "234160c68c87561e7d2af8e6be72e17e360990380c3de5b5f8ebddbfe5ad41cd",
                "md5": "e658d1b1cf96f9c4d457890d1a9793f5",
                "sha256": "7f5be7b6d45e81c0e7fa709304821bb6b7cc76b03b20b364aa46efff61dac0aa"
            },
            "downloads": -1,
            "filename": "interactive_figure-0.4.1.tar.gz",
            "has_sig": false,
            "md5_digest": "e658d1b1cf96f9c4d457890d1a9793f5",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 9294467,
            "upload_time": "2024-10-22T12:19:41",
            "upload_time_iso_8601": "2024-10-22T12:19:41.631262Z",
            "url": "https://files.pythonhosted.org/packages/23/41/60c68c87561e7d2af8e6be72e17e360990380c3de5b5f8ebddbfe5ad41cd/interactive_figure-0.4.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-22 12:19:41",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "teuncm",
    "github_project": "interactive-figure",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "interactive-figure"
}
        
Elapsed time: 0.66023s