Skip to content

Penrose

Penrose 數學圖表自動化生成系統

軟體分類 應用軟體 / 生產力工具
軟體標籤
411424469978全通路 (Omnichannel)667
開發廠商 Carnegie Mellon University (Penrose Team)
Stars
7.9k
Forks
354
License
MIT
Version
vv3.x (2026 Edition)
Update
2026-03-05
OS
web (browser-based)vs code extensionnode.js (cli)

從公式到影像的直達車:用程式化的語言,終結手動調整圖表的噩夢

  • 內容與風格分離: 採用三層 DSL(領域、內容、風格)架構,您可以更換不同的「Style」檔案,讓同一組數學邏輯瞬間從「教科書風格」轉變為「簡報風格」。
  • 基於約束的自動佈局: 不同於傳統繪圖軟體需手動對齊,Penrose 會將數學關係轉化為能量函數(Energy Functions),透過優化演算法自動尋找視覺上最平衡、無重疊的佈局。
  • 學術級輸出品質: 原生支援 LaTeX 數學符號渲染,並可匯出為高品質的 SVG 或 PNG,完美銜接您的專業論文與教材。
  • 互動式編輯體驗: 支援在瀏覽器中即時修改腳本並觀察圖表變動,甚至可以手動拖動圖表組件,讓系統在您的干預下重新進行局部優化。

核心技術架構:DSL 三位一體

  • Domain (領域層): 定義數學世界的規則(例如:集合論中有「集合」與「元素」的概念)。
  • Substance (內容層): 描述具體的物件與關係(例如:集合 A 是集合 B 的子集)。
  • Style (風格層): 定義幾何圖形如何對應到數學物件(例如:集合顯示為圓形,子集關係顯示為包含)。

2026 關鍵技術更新

  • AI 語意轉換器 (Text-to-Penrose): 2026 年版本深度整合了 LLM,使用者可直接輸入「畫出一個描述群論中同構定理的圖表」,系統會自動生成對應的 DSL 代碼。
  • 3D 投影引擎: 新增支援 3D 物件的投影渲染,讓線性代數中的向量空間與高維幾何能以更直觀的角度呈現。
  • Web 互動元件化: 支援將圖表匯出為獨立的 Web Components,讓網頁教材中的圖表能與使用者的輸入進行即時互動與動態運算。

繪圖工具方案橫向對比 (2026)

特性項目TikZ (LaTeX)Adobe IllustratorPenrose
操作方式代碼 (需手動座標)手動拖拽 (GUI)代碼 (自動佈局)
邏輯感應高 (理解數學關係)
修改難易度難 (需改座標)中 (需手動調整)極易 (改描述即可)
學習曲線陡峭陡峭平緩 (類英文語法)
適用對象LaTeX 核心用戶設計師數學家、研究者、教育者

佈局優化數學模型 (LaTeX)

Penrose 的核心是將佈局問題視為一個最小化能量函數 E(D) 的過程。設 D 為所有圖形元件的位置參數,系統會最小化以下函數:

E(D)=iwici(D)+jvjoj(D)

其中 ci(D)約束函數(如:點必須在圓內),oj(D)目標函數(如:保持美觀的間距),wv 是對應的權重。系統透過梯度下降法找到使 E(D) 最小的配置。


快速開發範例 (Substance)

-- 定義一個簡單的集合關係
Set A, B
IsSubset(A, B)

-- 為物件命名,這些標籤將顯示在圖表上
label A $mathcal{A}$
label B $mathcal{B}$


只要配合適當的風格檔,上述幾行代碼即可生成一個精美的文氏圖(Venn Diagram)。

產品說明

Penrose 是數學與美學之間的「自動翻譯機」。在 生產力工具 的版圖中,它解決了「數學家不擅長設計,設計師不理解數學」的長期鴻溝。它讓創作者能將精力集中在嚴謹的邏輯結構上,而將對齊、分佈與渲染等耗時的體力活交給機器處理。其核心價值在於「讓複雜的知識視覺化變得廉價且精確」。對於在 2026 年需要產出大量高品質科學圖像、或希望建立自動化互動教材的學者來說,Penrose 是將抽象思維轉化為視覺力量的終極武器。