用Python創建圖形的方式*多,除了開源庫,商業庫也不少。其中mateplotlib是Python領域中使用*廣泛的繪圖工具。但是它在統計圖表的創建和展示方面仍然有許多缺點。雖然可以創建漂亮的圖表,但是需要耗費大量的精力,因為他原本是為印刷而設計的。先不管美不美觀,至少他足以應付大部分需求。在pandas中,我跟其他開發人員一直都在尋求使數據分析中的大部分繪圖工作變得更簡單的辦法。那么廣泛使用的圖形化工具有哪些呢?今天小編簡單來介紹幾個。

1、Chaco

Chaco是由Enthought開發的一個繪圖工具包,它既可以繪制靜態圖又可以生成交互式圖形。它*適合用復雜的圖形化方式表達數據的內部關系。跟mateplotlib相比,Chaco對交互的支持要好得多,而且渲染速度很快。如果要創建交互式的GUI應用程序,它確實十分不錯的選擇。

2、mayavi

mayavi項目是一個基于開源C++圖形庫VTK的3D圖形工具包。跟mateplotlib一樣,mayavi也能集成到IPython以實現交互式使用。通過鼠標和鍵盤操作,圖形可以被平移、旋轉、縮放。

Python課程

3、其他庫

當然,Python領域中還有許多其他的圖形化庫和應用程序:PyQwt、Veusz、gnuplotpy、biggles等。我就曾經見過PyQwt被用在基于Qt框架的GUI應用程序中。許多庫都還在不斷的發展。近幾年來,我發現了一個總體趨勢:大部分庫都在向基于Web四維技術發展,并逐漸遠離桌面圖形技術。

基于Web技術的圖形化是必然的發展趨勢。毫無疑問,許多基于Flash或JavaScript的靜態或交互式圖形化工具已經出現了很多年。而且類似的新工具包一直在不斷涌現。相比之下,非Web式的圖形化開發工作在近幾年中減慢了許多。Python以及其他數據分析和統計計算環境都是如此。

于是,開發方向就變成了實現數據分析和準備工具與Web瀏覽器之間更為緊密地集成。希望這個思路今后能成為Python以及非Python用戶之間富有成效的協作手段。