安装与验证#
安装平台 wheel#
要求 Python 3.10+。PyPI 已发布版本为 0.3.1,覆盖 Windows、Linux 和 macOS,从 PyPI 安装:
python -m pip install laymeshpython -m laymesh --version也可按发布流程构建 wheel,再使用 python -m pip install /path/to/laymesh-<version>-<tags>.whl 安装生成的具体文件。请选择匹配操作系统、架构及 Linux glibc 版本的包。画廊中的仓库示例需要另行获取,pip 不安装示例目录。
一次安装包含 CLI、原生图表、Python API、Jupyter Magic、NumPy/pandas 数据绑定和 Matplotlib Figure 导入。NumPy、pandas、Matplotlib 与 IPython 都是默认依赖。
请安装到 Notebook 内核使用的 Python 环境。在 Notebook 中可用 %pip install laymesh 指定当前内核环境。JupyterLab 等 Notebook 应用需另行安装。
平台与字体#
| 构建目标 | 要求 |
|---|---|
| Windows x64 | 64 位 Windows 与 x64 Python |
| macOS Intel / Apple Silicon | macOS 14+,Python 架构匹配 |
| Linux x64 / arm64 | glibc 不低于 wheel 的 manylinux_2_XX 标签 |
本次发布包含以上五个平台的 wheel,均已通过 Python 3.10、3.13、3.14 的安装与使用检查。Linux wheel 为 manylinux_2_35_x86_64 / manylinux_2_35_aarch64,要求 glibc 2.35+。完整验证见发布工作流。当前没有 Alpine/musl、32 位系统和 Windows ARM64 wheel。
wheel 包含一个 Rust 原生程序、公式字体及依赖许可。绘图时不下载引擎或字体,无需额外安装 Rust、Node.js 或 TeX。正文使用系统或用户字体;缺字会警告并显示方框。共享可复现图件时请提供明确的字体文件。文档网页预览单独提供自己的字体。
首次运行#
将下列源码保存为 figure.lay:
page = canvas(size=(120 mm, 90 mm), background="#ffffff")p = plot(size=(110 mm, 80 mm), x=axis(label="Time (s)"), y=axis(label="Signal"))p.line(x=[0, 1, 2, 3], y=[1, 3, 2, 4], label="Experiment")p.legend(position="top_left")page.add(p, offset=(5 mm, 5 mm))python -m laymesh validate figure.laypython -m laymesh inspect figure.lay --jsonpython -m laymesh render figure.lay -o figure.pdfpython -m laymesh render figure.lay -o figure.png --dpi 300laymesh 与 python -m laymesh 调用同一引擎。validate 检查源码和素材;render 检查后生成文件。错误返回非零状态,并说明文件、行、列及原因。inspect --json 输出尺寸、坐标映射、变换和诊断。使用 --warnings show|hide 或 LAYMESH_WARNINGS 控制警告;隐藏警告仍保留错误和检查 JSON 中的诊断。
源码开发#
需要 Rust 1.93.1;构建脚本需要 Python 3.11+。在仓库根目录运行:
cargo build --release --locked -p laymesh-clipython -m pip install -e './python'python -m laymesh render examples/basic.lay -o basic.pdf直接运行原生程序时使用 target/release/laymesh(Windows 为 target/release/laymesh.exe),或 cargo run --release --locked -p laymesh-cli --。可编辑安装使用仓库中的引擎,不内置它。开发时可用 LAYMESH_CLI 指定其他原生程序。
基本概念 · 第一张布局 · Python API · Notebook