mosaickit
mosaickit 是與領域無關的工具組,用可重複使用的場景、圖層、樣式、參數與渲染器組合出二維圖形。
領域套件負責定義自己的模型與語意角色,mosaickit 則負責組合它們的視覺圖層並完成渲染。 mosaickit 對任何領域一無所知,也不依賴模型套件或曲線擬合套件。
| 本文件對應版本 | 0.5.1 |
| Python | 3.10 以上(專案支援 3.10 至 3.13) |
| 依賴 | numpy、matplotlib(Python 3.10 另需 tomli) |
| 使用者 | utility-viz、principle-viz |
| 原始碼 | github.com/EconViz/mosaickit |
| 授權 | MIT |
功能範圍
- 精簡的場景圖:
PathLayer、FillLayer、MarkerLayer、TextLayer、ArrowLayer、LegendLayer與GroupLayer - 不會壓到其他元素的標籤(
RegionLabelLayer、PointLabelLayer),以及座標軸上的標註 (AxisMarkLayer、AxisNoteLayer、BraceLayer、SpanBraceLayer) - 座標軸輔助函式,例如
quadrant_axes()、crosshair_axes()與box_frame() - 樣式、主題與調色盤,顏色可以用名稱指定
- 參數與運算式、
CanvasGrid網格排版,以及Animation動畫掃描 - 內建的 Matplotlib 渲染器(輸出 PNG、SVG、PDF),並提供
Renderer協定以接入其他後端
範圍
mosaickit 負責與領域無關的場景組合、樣式、主題、參數綁定、網格排版、動畫影格、渲染器介面, 以及靜態與動態輸出。領域語意則屬於建構在它之上的套件。曲線建構與原生 TikZ 路徑產生, 屬於 bezierkit 這類幾何套件的工作。