精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
08-選擇適合你的Python可視化工具

Python 可視化工具全景圖

R的可視化工具包ggplot2為R的流行起到了很好的推動作用。常有人拿這個與Python作比較,認為可視化是Python相對于R的短板。

其實我以為,恰恰是Python的可視化生態過于“豐富”,豐富到有點讓人無所適從:

  • 這些庫各有長短、各有側重,常常不知如何選擇;

  • 似乎又都有一些不如人意的地方,讓初學習者常換工具,浪費了太多的時間和精力。

所以,本篇將:

  1. 系統地分析一下Python可視化工具的生態;

  2. 對一些重要的工具進行一些簡單地介紹;

  3. 最后給出一些如何根據自己的情況選擇合適的一兩個Python可視化工具的建議。

Python工具知多少?

根據PyViz的登記,目前共有 68 個Python可視化工具(庫、包)。其中有11個的作者已不再開發或認可。仍在開發維護的工具有57個之多。前面的圖展示了其中目前仍在維護的主要工具。

這么多可視化工具,初看起來確實令人生畏。

對這些工具進行一下歸類比較,有助于我們做出合適的選擇。

計算機繪圖世界的等級制度

注意:這是一個草根為自己總結的!

一級,硬件級

計算機繪圖世界有兩個接近硬件級的底層庫,或者叫規范、標準:

  • OpenGL,通用的

  • Direct3,windows系統上的

一般的顯卡制造商基于它們編寫顯卡(圖形)驅動程序。

二級,程序開發語言級

程序開發語言,在底層調用相對低級的圖形庫,提供一套高級一點的API供程序員使用。如,Python中的PyQtGraph,2D圖形使用Qt的GraphicsView框架,3D圖形使用OpenGL。

一般情況下,程序開發人員才會直接使用它們。

三級,繪圖軟件(庫、包)級

繪圖時直接使用的庫和包,如matplotlib,調用Python的PyQtGraph。但一般使用人員都是直接使用matplotlib提供的API接口(函數,對象等)。

需要繪圖、可視化的人員使用;做二次開發的人員使用。

四級,二次開發和封裝

在三級庫包的基礎上再開發、封裝,如基于matplotlib做二次開發、封裝的plotnine、seaborn等。實際上matplotlib的pyplot模塊也就是mpl核心對象的封裝函數集。

主要用于快速繪圖、可視化工作。

IEEE 的SciVis 和 InfoVis 組

IEEE組織習慣于將Python可視化工具分為兩個組:

一是:Scientific Visualization (SciVis) ,科學可視化。主要基于OpenGL圖形標準,提供三維或四維物理過程的圖形密集可視化,側重于工程和科學環境。常見的這類Python可視化工具有VisPy, glumpy, GR, Mayavi等。

如使用 VisPy 庫繪制螺旋星系圖。

螺旋星系圖

二是:Information Visualization (InfoVis) ,信息可視化。專注于任意空間中信息的可視化,而不一定是三維物理世界。InfoVis組的庫使用打印頁面或計算機屏幕的兩個維度來抽象、解釋空間,通常使用軸和標簽。常見的Python這類庫有,pandas, NetworkX, Cartopy,ggplot, plotnine, HoloViews, GeoViews,seaborn等。

InfoVis組的細分

我等草根很少需要去使用SciVis組的可視化工具,99%都在InfoVis組選擇。

可以根據庫的基礎語言、等級、應用場景等,InfoVis組的庫可以進一步細分為若干個子組:

  • Matplotlib:最古老,也是最受歡迎的InfoVis庫之一,具有廣泛的2D繪圖類型和輸出格式。使用桌面GUI工具包(如Qt和GTK)庫,重點放在靜態圖像以及交互式圖形上。也對3D提供了一定的支持,但有一些限制。

  • 基于matplotlib:多年來,基于Matplotlib二次開發,構建了各種工具。目的有:用于特定類型數據的渲染引擎,用于特定領域(如Pandas中的繪圖對DataFrame的支持),或提供更高級別的API以簡化繪圖步驟(如ggplot, plotnine),或者特定用途(如seaborn的統計繪圖)等。

  • JavaScript,及基于JavaScript的庫。

  • JSON,基于JavaScript的D3.js庫。

  • WebGL,基于WebGL標準的Web繪圖。

  • 其他,提供一些特殊的、補充功能的庫,如用于可視化網絡的graphviz。

根據等級關系分類

根據庫在Python可視化生態中所處的位置、領域、狀態,可以將68個Python可視化工具分為以下12類:

其中休眠狀態的庫有11個,原則上不應選擇這些庫。

為了有一個合適的篇幅,將在下篇中接著討論:

  • Python重要庫的介紹;

  • 如何選擇適合你的Python可視化工具;

  • 我為什么選擇Matplotlib。

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
UC頭條:Python可視化庫你知道多少? 一文帶你深入探討
SciPy2018大會:Python數據可視化常見類庫介紹
「獨家」Python數據可視化利器Matplotlib,50 干貨分享
Python&Matlab科研繪圖大比拼 (2)
python matplotlib有哪些可視化功能
用Python進行數據可視化的10種方法
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 辽中县| 望都县| 绥滨县| 新晃| 桃园市| 张家口市| 社旗县| 区。| 宜春市| 沽源县| 武穴市| 景洪市| 大同市| 繁昌县| 广昌县| 右玉县| 临夏市| 台江县| 惠水县| 大余县| 崇文区| 博兴县| 兴隆县| 东山县| 迁西县| 大悟县| 白水县| 武义县| 铜梁县| 县级市| 江门市| 田阳县| 鄄城县| 南安市| 石门县| 滕州市| 焦作市| 徐州市| 大足县| 孟州市| 锡林浩特市|