# TerminalScope
A very simple Python oscilloscope for displaying 1-dim dynamic data in the command line.
- Easy to integrate (no third-party libraries required)
- Support for multiple variables with different colors and symbols
- Lightweight and cross-platform compatibility (Windows, macOS, Linux, etc.)
- Typical use cases:
- Accessing your Raspberry Pi via SSH and wanting to display sensor data in real-time
- Debugging your motor PID controller and needing a simple graphical user interface

## Installation
### Requirements
- Python 3.7+
- No external dependencies
- Compatible with any terminal that supports ANSI color codes
### From PyPI
```bash
pip install tscope
```
### From Source
```bash
git clone https://github.com/sszxc/TerminalScope.git
cd TerminalScope
pip install -e .
```
## Quick Start
```python
import math
import time
from tscope import TerminalScope
# Create a scope with 3 variables
scope = TerminalScope(["sin(x)", "cos(x)", "ramp"], data_range=(-2, 2))
# Plot data
for i in range(100):
x = i * 0.1
scope.plot([math.sin(x), math.cos(x), x % 2 - 1])
time.sleep(0.1)
```
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
Raw data
{
"_id": null,
"home_page": "https://github.com/sszxc/TerminalScope",
"name": "tscope",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "Henrik <im.zhangxc@gmail.com>",
"keywords": "oscilloscope, terminal, visualization, real-time, data",
"author": "Henrik",
"author_email": "Henrik <im.zhangxc@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/ff/98/d358844a6a0f7d871caac4340a8b130f3cf54c5384b83a365d5daf76f0ea/tscope-0.1.4.tar.gz",
"platform": null,
"description": "# TerminalScope\n\nA very simple Python oscilloscope for displaying 1-dim dynamic data in the command line.\n\n- Easy to integrate (no third-party libraries required)\n- Support for multiple variables with different colors and symbols\n- Lightweight and cross-platform compatibility (Windows, macOS, Linux, etc.)\n- Typical use cases:\n - Accessing your Raspberry Pi via SSH and wanting to display sensor data in real-time\n - Debugging your motor PID controller and needing a simple graphical user interface\n\n\n\n## Installation\n\n\n### Requirements\n\n- Python 3.7+\n- No external dependencies\n- Compatible with any terminal that supports ANSI color codes\n\n\n### From PyPI\n```bash\npip install tscope\n```\n\n### From Source\n```bash\ngit clone https://github.com/sszxc/TerminalScope.git\ncd TerminalScope\npip install -e .\n```\n\n## Quick Start\n\n```python\nimport math\nimport time\nfrom tscope import TerminalScope\n\n# Create a scope with 3 variables\nscope = TerminalScope([\"sin(x)\", \"cos(x)\", \"ramp\"], data_range=(-2, 2))\n\n# Plot data\nfor i in range(100):\n x = i * 0.1\n scope.plot([math.sin(x), math.cos(x), x % 2 - 1])\n time.sleep(0.1)\n```\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A simple Python oscilloscope for displaying 1-dim dynamic data in the command line",
"version": "0.1.4",
"project_urls": {
"Homepage": "https://github.com/sszxc/TerminalScope",
"Issues": "https://github.com/sszxc/TerminalScope/issues"
},
"split_keywords": [
"oscilloscope",
" terminal",
" visualization",
" real-time",
" data"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "4855bef1c9063b57c1ef6a6a7672066251fc9397488ddab33461b030959667df",
"md5": "e17ea7aa6db189777a7111bca53cc01c",
"sha256": "f53ab906318ad11dd7ed5f415c193662d48b885a9e2a8bfcbbf9456168334a92"
},
"downloads": -1,
"filename": "tscope-0.1.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e17ea7aa6db189777a7111bca53cc01c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 12563,
"upload_time": "2025-08-11T21:20:52",
"upload_time_iso_8601": "2025-08-11T21:20:52.547924Z",
"url": "https://files.pythonhosted.org/packages/48/55/bef1c9063b57c1ef6a6a7672066251fc9397488ddab33461b030959667df/tscope-0.1.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ff98d358844a6a0f7d871caac4340a8b130f3cf54c5384b83a365d5daf76f0ea",
"md5": "b33e98357c4cf55894d13e75289b5c6e",
"sha256": "5fdd62b2b2e43c1ce771681d4c902f30513985106455c4b682eefb77f0251fd9"
},
"downloads": -1,
"filename": "tscope-0.1.4.tar.gz",
"has_sig": false,
"md5_digest": "b33e98357c4cf55894d13e75289b5c6e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 276701,
"upload_time": "2025-08-11T21:20:53",
"upload_time_iso_8601": "2025-08-11T21:20:53.929576Z",
"url": "https://files.pythonhosted.org/packages/ff/98/d358844a6a0f7d871caac4340a8b130f3cf54c5384b83a365d5daf76f0ea/tscope-0.1.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-11 21:20:53",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "sszxc",
"github_project": "TerminalScope",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "tscope"
}