Skip to content
chidou59Public

About

批量读取 Excel 数据并生成可编辑、可复现的论文风格图表。

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

PlotLab · Excel 全自动画图器

Python Matplotlib CI License

将 Excel 数据转换为论文级多系列图表的绘图流程插图

一个面向 Windows 用户的桌面画图工具:选择包含多份 Excel 的文件夹,即可将每个文件作为一个数据系列,自动叠加绘制成点图或折线图。

数据格式

  • 支持 .xlsx、.xlsm 和 .xls。
  • 每个 Excel 的第一个工作表代表一组数据。
  • 前两列非空列依次作为 X 值和 Y 值。
  • 首行可以是表头,也可以直接是数值;程序会自动判断。
  • 文件名(不含扩展名)作为图例名称。

安装与启动

需要 Python 3.11 或更高版本。

python -m pip install -r requirements.txt
python app.py

Windows 下也可以双击 run.bat 启动。

使用流程

  1. 输入图表标题、X 轴标题和 Y 轴标题。
  2. 选择点图或折线图。
  3. 选择装有 Excel 数据的文件夹,查看每个文件的数据检查结果。
  4. 点击“生成并导出 300 DPI PNG”。

选择文件夹并完成读取后,程序会自动打开“数据汇总与实时预览”工作台:

  • 多个 Excel 会汇总为一张长表,字段为数据系列、源文件、系列内行号、X 和 Y;
  • 双击数据系列、X 或 Y 单元格即可修改,源文件与行号保持只读;
  • 数据变化后约 250 ms 自动刷新右侧图像,同时主程序最终生成也会使用修改后的数据;
  • 支持按系列筛选、新增数据行、删除所选行和重命名图例系列;
  • 点击“导出汇总表”可将当前修改保存为新的 .xlsx,原始 Excel 永远不会自动覆盖;
  • 关闭工作台后可通过主界面的“编辑汇总数据”重新打开。

图片会自动保存到数据文件夹内的 results 子文件夹,命名格式为 标题_年月日_时分秒.png。折线图严格保持 Excel 中原始行序。

默认画布为严格的 12 × 10 cm、300 DPI:标题使用五号字(10.5 pt),其余图中文字使用小五号字(9 pt);数据点为 4 pt,折线为 1 pt,坐标框为 0.85 pt,主/次网格线分别为 0.65/0.35 pt,次刻度分为 2 段且长度为 2.2 pt。图例放在绘图区右下角,使用白底细边框且不显示图例标题;系列较多时自动切换为两列。坐标框保持四边闭合,首末主刻度与坐标轴端点对齐,并使用浅色虚线网格。

点击主界面中的“调整参数”可以打开图像参数面板。可调内容包括:

  • 图像宽度、高度(厘米)与输出 DPI;
  • 标题、坐标轴标题、刻度和图例字号;
  • 数据点大小、折线宽度和坐标框线宽;
  • 主/次网格线宽、次刻度分段数与次刻度长度;
  • 是否显示淡灰色次网格线。
  • 是否在成图中包含标题;关闭后标题不再必填,并自动释放顶部空间。
  • 彩色或黑白模式;黑白模式会同时轮换线型和点形,适合灰度打印。
  • 数据点形状库;可取消不希望使用的形状,程序会在保留的形状中循环分配。

参数会同时用于右侧预览和最终 PNG。面板提供范围校验与“恢复论文默认值”。

主刻度和次刻度线均默认朝向绘图区内部。

保存与套用设置

  • 完成标题、X/Y 轴标题、图型和图像参数调整后,点击“保存设置”,输入方案名称即可保存。
  • 点击“套用设置”可按名称、图型、尺寸和保存时间选择已有方案;双击也可直接套用。
  • 同名设置不会静默覆盖,程序会先请求确认。
  • 设置方案不保存数据文件夹,因此套用后可以自由选择新的数据集,并继续修改任何参数。
  • 设置持久保存在当前 Windows 用户的 %APPDATA%\PlotLab\presets.json,关闭程序或下次启动后仍然可用。

字体

出图采用 Times New Roman → 黑体(SimHei) 字体回退顺序。Windows 通常已包含这两种字体;如程序提示缺失,请先安装对应字体。

代码结构

plotlab/
├─ app.py                    应用入口
├─ excel_plotter/            GUI、数据模型、读取、编辑和绘图
├─ tests/                    自动化测试
├─ docs/ARCHITECTURE.md      架构说明
└─ requirements.txt         运行依赖

模块职责和数据流见 docs/ARCHITECTURE.md。输入工作簿、生成图片和本地预设不会进入 Git。

参与贡献

欢迎提交 Issue 和 Pull Request。若报告 Excel 兼容问题,请提供去除敏感数据后的最小复现文件。

许可证

本项目采用 MIT License。

About

批量读取 Excel 数据并生成可编辑、可复现的论文风格图表。

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages