A local graphical Matplotlib code editor for scientific Python workflows.
Project description
FigStudio
FigStudio is a local graphical editor for Matplotlib figures. It is built for scientific Python users who already have data in a script or notebook and want a faster way to create, style, preview, export, and save reproducible Matplotlib OO code.
FigStudio 是一个本地 Matplotlib 图形编辑器。它面向已经在脚本或 Notebook 中完成数据处理的科研 Python 用户,用 GUI 快速创建、调整、预览、导出并保存可复现的 Matplotlib OO 代码。
Install / 安装
pip install figstudio
The package wheel includes the built React editor. End users do not need Node, npm, Vite, or the frontend source tree after installation.
wheel 包含构建后的 React 编辑器。普通用户安装后不需要 Node、npm、Vite,也不需要前端源码目录。
Quick Start / 快速开始
Add FigStudio after data preparation and give it one controlled code block:
在数据处理完成后调用 FigStudio,并提供一个受控代码块:
import figstudio
# Finish data processing first.
session = figstudio.open(locals(), script_path=__file__, block_id="main")
# figstudio:start main
# figstudio:end main
Open the editor, create or edit layers, then click Save code. FigStudio replaces only the code between the matching markers.
打开编辑器,创建或调整图层,然后点击 Save code。FigStudio 只替换匹配 marker 中间的代码。
Run the demo:
运行 demo:
figstudio demo
For notebook-style use, omit script_path; Save code returns replacement cell code instead of editing notebook files.
Notebook 风格使用时不要传 script_path;点击 Save code 会返回替换 cell 代码,不会直接修改 Notebook 文件。
Development / 开发
Backend tests:
后端测试:
uv run --extra dev pytest
Frontend development:
前端开发:
cd frontend
npm install
npm run build
npm run dev
Build a publishable package:
构建可发布包:
uv build
The build hook runs npm ci, builds the frontend, and bundles the output into the Python wheel. See the developer guide for feature work and release checks.
构建 hook 会运行 npm ci,构建前端,并把产物打进 Python wheel。功能开发和发布检查见开发者指南。
Documentation / 文档
| Reader / 读者 | Start here / 从这里开始 |
|---|---|
| Users creating figures / 制图用户 | User Guide |
| Product planning / 产品规划 | Product Requirements and Roadmap |
| API consumers / API 使用者 | API Reference |
| Contributors / 继续开发者 | Developer Guide and Technical Design |
The README stays intentionally short. Long troubleshooting, API contracts, architecture details, and backlog items live in docs/.
README 有意保持简短。较长的排错、API 契约、架构细节和后续计划都放在 docs/ 中。
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file figstudio-0.1.0.tar.gz.
File metadata
- Download URL: figstudio-0.1.0.tar.gz
- Upload date:
- Size: 286.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5afcbd53d2774200c9bf7ec0e7f4737467e526adb4cbea685c8b33036f3ddef1
|
|
| MD5 |
7ecec9c5e6e1f3a8bdb9de41499e598e
|
|
| BLAKE2b-256 |
7086e3da6cdfad480ffa80c81043cf8f6ff3a90e55c0aedbd01ea94822b1726b
|
Provenance
The following attestation bundles were made for figstudio-0.1.0.tar.gz:
Publisher:
publish-pypi.yml on Isabelle20070607/figstudio
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
figstudio-0.1.0.tar.gz -
Subject digest:
5afcbd53d2774200c9bf7ec0e7f4737467e526adb4cbea685c8b33036f3ddef1 - Sigstore transparency entry: 1839823631
- Sigstore integration time:
-
Permalink:
Isabelle20070607/figstudio@dd4d4568efe7141f08e34dcec1c18139469fb431 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Isabelle20070607
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@dd4d4568efe7141f08e34dcec1c18139469fb431 -
Trigger Event:
push
-
Statement type:
File details
Details for the file figstudio-0.1.0-py3-none-any.whl.
File metadata
- Download URL: figstudio-0.1.0-py3-none-any.whl
- Upload date:
- Size: 234.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
33033b3a8004128e2068592e616e65ab0daad5efcab0deacd4cb57e6c6c728fd
|
|
| MD5 |
7891fd4a583cc75e97fa1a3c8b63d92b
|
|
| BLAKE2b-256 |
5a1985b2449fd7286fef34344492d86babee16c3ba26af59b458374b2cfddb6c
|
Provenance
The following attestation bundles were made for figstudio-0.1.0-py3-none-any.whl:
Publisher:
publish-pypi.yml on Isabelle20070607/figstudio
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
figstudio-0.1.0-py3-none-any.whl -
Subject digest:
33033b3a8004128e2068592e616e65ab0daad5efcab0deacd4cb57e6c6c728fd - Sigstore transparency entry: 1839823712
- Sigstore integration time:
-
Permalink:
Isabelle20070607/figstudio@dd4d4568efe7141f08e34dcec1c18139469fb431 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Isabelle20070607
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@dd4d4568efe7141f08e34dcec1c18139469fb431 -
Trigger Event:
push
-
Statement type: