| Name | interactive-figure JSON |
| Version |
0.4.1
JSON |
| download |
| home_page | None |
| Summary | Create interactive Matplotlib figures! |
| upload_time | 2024-10-22 12:19:41 |
| maintainer | None |
| docs_url | None |
| author | None |
| requires_python | >=3.9 |
| license | None |
| 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"
}