textual-plotext
A Textual widget wrapper for the Plotext plotting library
Decision gist · record as of 2026-08-14
Yes, if you are already using Textual and need terminal-based plotting. The package has low install friction, no security vulnerabilities, and a permissive license. However, note that it is dormant (622 days since last release); adopt it for stable use cases but verify compatibility with your Plotext version and monitor for any upstream breaking changes.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Textual and Plotext as runtime dependencies; Python 3.8.1 or later.
- Low install friction with only two runtime dependencies (plotext and textual).
- The package is dormant but has a stable last commit and no known vulnerabilities, making it safe to adopt for existing Textual projects.
License · maintenance · safety
MIT (permissive) — MIT license is permissive and imposes no significant restrictions on use, modification, or distribution in commercial or private projects.
last release 2024-11-30 (622 days) · last repo commit 2024-11-30 · 249 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 259,749 downloads/mo, #8,406 on PyPI
Alternatives
Verify before relying
from textual.app import App, ComposeResult
from textual_plotext import PlotextPlot
class PlotApp(App):
def compose(self) -> ComposeResult:
yield PlotextPlot()
def on_mount(self) -> None:
plt = self.query_one(PlotextPlot).plt
plt.scatter(plt.sin())
plt.title("Plot")- Whether the dormant status (622 days since last release) indicates ongoing maintenance or abandonment risk.
- Performance characteristics when rendering large datasets or frequent plot updates in Textual apps.
- Compatibility with recent Plotext versions and any breaking changes since the last release.
What it is and what it does
textual-plotext bridges Plotext, a terminal plotting library, into Textual applications by providing a `PlotextPlot` widget. Instead of calling Plotext functions directly, you access them through the widget's `plt` property, which handles rendering within the Textual event loop and automatically manages plot display without needing explicit `show()` calls.
The widget supports most Plotext plotting functions (scatter, line, bar, etc.) and utility functions like `sin()` and `colorize()`, but excludes file I/O, interactive REPL features, and GIF/video playback. It includes custom themes prefixed with `textual-` that use RGB colors for consistent appearance across terminals, and automatically switches between dark and light mode themes when the Textual app changes modes.
Use it for
- Build terminal dashboards that display live data plots alongside other Textual widgets.
- Create monitoring tools that render real-time metrics as terminal-based charts.
- Embed scatter, line, or bar plots in CLI applications without leaving the terminal UI framework.
- Visualize mathematical functions or test signals directly within a Textual TUI.
- Develop data exploration tools that combine Textual forms and navigation with Plotext visualizations.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are already using Textual and need terminal-based plotting.
The package has low install friction, no security vulnerabilities, and a permissive license. However, note that it is dormant (622 days since last release); adopt it for stable use cases but verify compatibility with your Plotext version and monitor for any upstream breaking changes.
Install
textual-plotext on PyPI
Before you install
Low install friction with only two runtime dependencies (plotext and textual). The package is dormant but has a stable last commit and no known vulnerabilities, making it safe to adopt for existing Textual projects.
Requires Textual and Plotext as runtime dependencies; Python 3.8.1 or later.
License in practice
MIT license is permissive and imposes no significant restrictions on use, modification, or distribution in commercial or private projects.
Quickstart
from textual.app import App, ComposeResult
from textual_plotext import PlotextPlot
class PlotApp(App):
def compose(self) -> ComposeResult:
yield PlotextPlot()
def on_mount(self) -> None:
plt = self.query_one(PlotextPlot).plt
plt.scatter(plt.sin())
plt.title("Plot")
Verify before relying
- Whether the dormant status (622 days since last release) indicates ongoing maintenance or abandonment risk.
- Performance characteristics when rendering large datasets or frequent plot updates in Textual apps.
- Compatibility with recent Plotext versions and any breaking changes since the last release.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <4.0.0,>=3.8.1 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesplotexttextual |
| Maintenance | Dormant 622 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 259,749 / month, #8,406 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: Windows :: Windows 10Operating System :: Microsoft :: Windows :: Windows 11Operating System :: POSIX :: LinuxProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Scientific/Engineering :: VisualizationTyping :: Typed |
Evidence: textual_plotext-1.0.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “terminal plotting widget”
- textual-plotextWraps the Plotext plotting library as a Textual widget, allowing…
- bqplotbqplot is a 2-D interactive plotting library for Jupyter notebooks…
- ipymplipympl enables interactive matplotlib plots in Jupyter notebooks and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Visualization packages
matplotlib creates static, animated, and interactive visualizations in Python, producing publication-quality figures in multiple formats for scripts, shells, web servers, and graphical interfaces.
Install it if you need to visualize data, generate publication-quality figures, or embed plots in applications.
ContourPy calculates contours of 2D quadrilateral grids using C++11 algorithms wrapped in Python, offering serial and multithreaded implementations without requiring Matplotlib as a dependency.
Plotly is an interactive, browser-based graphing library that creates charts and visualizations from Python, rendering them as HTML that can be viewed in Jupyter notebooks, standalone files, or web applications.
Generates DOT language source code for graph structures and renders them using the Graphviz graph drawing software installed on your system.
Install it if you need to generate or render graphs from Python.
Streamlit transforms Python scripts into interactive web applications with minimal code, enabling rapid development of data dashboards, reports, and chat interfaces without requiring web development expertise.
Leather is a lightweight Python charting library for quick, no-frills data visualization. It generates charts without requiring perfect styling or extensive configuration.
See also plotext · textual · textual-dev · termplotlib · textual-serve · textual-autocomplete · plotnine · plotille · timple · textual-image