2015-01-09 32 views
0

我將創建數字和的可視化表示,其中可以包含以下內容: 常量,函數,運算符和參數。 我希望能夠代表每個這些事情與可調整的屬性,如線寬,大小,字體大小,顏色等Python 3創建可視化表示

我的程序循環一個數學問題,並解決它 - 但我需要畫出如何逐步解決數學問題,使用框和線(可能是動畫?但靜態框和線都可以)

我已經嘗試過使用tkinter,但它似乎沒有我需要的功能。

我不知道任何計算語言的圖形表示所以任何人都可以建議我可以這樣做的東西?(我必須使用python後端,因爲我已經有了計算python數學問題的代碼)。 輸出最好是一個運行.exe的窗口.exe

這裏是我需要繪製的一個類型的visulisation的例子。 (每張圖片是一個不同的例子,修改過的屬性如線寬等) 數字通過變量傳遞,操作符也是如此 - 但是這些行應該自動放置。

+0

沒有一個例子,很難猜測你正在尋找什麼:一張圖片在這裏是一個1000字的詞。默認的Python繪圖庫之一是[matplotlib](http://matplotlib.org/gallery.html),它在系統上與LaTeX一起安裝時,可以在圖形中生成數學公式。 – Evert 2015-01-09 21:52:33

+0

@Evert我編輯了原始帖子的照片!我會看看matplotlib,但是我不需要圖表 – Craig 2015-01-09 21:59:16

+0

啊,這對我有很大的幫助。是的,matplotlib可能不是你想要的,雖然它可以做這些事情(它只需要相當多的手動工作)。 – Evert 2015-01-09 22:01:56

回答

0

如果它不需要是互動的,你總是可以寫一個SVG文件,然後可以在任意數量的程序(包括大多數Web瀏覽器)打開。你不需要任何額外的模塊或庫來實現這一點,只需打開一個文件並開始寫文本即可。我相信你以後可以實現動畫。快速谷歌翻開了svgwrite這是一個旨在使SVG文件更容易寫入的python模塊,但SVG就像是一個非常簡單的XML格式,所以你在技術上甚至不需要另一個模塊(這應該使它更容易一點)。

+0

奇妙的是,我聽到一些同事談論SVG - 我會谷歌,看看它是否合適! – Craig 2015-01-09 22:00:08

+0

我不知道爲什麼我之前沒有想到這一點,但[graphviz](http://www.graphviz.org/)可能是最簡單的方法。甚至有一個例子[非常類似於你在做什麼](http://www.graphviz.org/content/Genetic_Programming),雖然承認它並不真正評估表達式。顯然有幾個Python綁定可用(我沒有資格推薦一個)。 – Ademan 2015-01-09 22:53:01