高性能科研绘图配色工具

Tip

本项目旨在解决科研绘图中“配色方案”与“数据呈现”割裂的痛点。

1. 架构设计与技术栈

[!定义]

  • 前端交互 (UI): Shiny for Python。利用其 Reactive 机制实现状态管理与 DOM 更新。
  • 绘图引擎 (Rendering): Plotnine (基于 Grammar of Graphics)。提供符合学术标准的统计图表绘制。

2. 核心模块实现

2.1 数据驱动

  • 配色空间: 解析 colors.txt 构建颜色向量空间,支持基于基数的过滤算法。
  • 图表模板库: 预置 12 种统计模型,覆盖科研绘图的三大维度:
    • 分布: Boxplot, Violin, Ridgeline, ECDF.
    • 关系: Scatter, Line, Heatmap.
    • 评估: ROC Curve, Confusion Matrix.

2.2 响应式布局

  • 网格系统: 使用 layout_column_wrap 构建自适应网格,确保在不同分辨率下的可视性。
  • 状态同步: 通过 JavaScript 钩子实现“侧边栏配置 全局图表状态”的双向绑定。

项目哲学

造轮子不是为了未来能够简单复用,而是为了能一秒出图。

颜色的选择也尤为关键:不应该盲目选择配色,而是基于配色基础配色理论的实践调配配色组,综合来说,长期的取色收藏和更新才是项目的目的。