-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Python數據分析:基于Plotly的動態可視化繪圖

( 簡體 字)
作者:孫洋洋 等類別:1. -> 程式設計 -> Python
譯者:
出版社:電子工業出版社Python數據分析:基于Plotly的動態可視化繪圖 3dWoo書號: 49081
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:5/1/2018
頁數:400
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121341137
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

Python是一門非常優秀的編程語言,其語法簡捷、易學易用,越來越受到編程人員的喜愛;Python也是一門非常“人性化”的編程語言,其各種語法規則的設計符合人們的思維方式,開發人員可以用最簡單的方式實現自己的編程目的,降低時間成本;同時,Python又是一門非常強大的編程語言,其在編程的各個領域都有非常不錯的表現,比如在網頁開發、程序GUI設計、網絡爬蟲、科學計算、數據可視化、機器學習與深度學習等領域,Python都有非常好的解決方案來解決現實中的業務問題。
互聯網的快速發展為我們積累了龐大的數據,計算機硬件的創新為存儲與分析這些數據創造了硬件條件,編程語言的發展為分析這些數據創造了軟件條件。在數據分析這個領域,Python有著自己獨有的優勢,簡單易用的特性與強大的開源模塊的支持使其成為數據分析領域方便、好用的利器。
Python在數據分析領域的廣泛應用離不開其強大的開源模塊的支持,大名鼎鼎的NumPy、SciPy、Statsmodels、Pandas等模塊的建立與發展奠定了Python在數據分析領域中的重要地位。這些模塊簡單又好用,它們提供的解決方案能夠解決絕大部分業務問題。在人工智能領域,Python也有非常棒的解決方案,如Sklearn、TensorFlow、MXNet、Theano、PyTorch、Caffe等都是非常好的開源模塊。尤其是在人工智能中最前沿的深度學習領域,Python幾乎占據了霸主的地位。Python借助在數據分析領域中開源模塊的優勢,于量化投資領域逐漸占據了領頭羊的地位。國內外主流量化投資網站大多支持Python語言,其在量化投資領域有一種逐漸淘汰其他語言,一統“江湖”之勢。
對數據的分析離不開數據的可視化,相對于Python在數據分析、人工智能、量化投資等領域中的發展,在數據可視化方面的發展有些滯后。最經典的Python可視化繪圖庫莫過于Matplotlib了,Matplotlib就是MATLAB+Plot+Library,即模仿MATLAB的繪圖庫,其繪圖風格與MATLAB類似。由于MATLAB的繪圖風格有些偏古典,為了繪出更漂亮的圖像,Python開源社區開發出了Seaborn繪圖模塊,它本質上是對Matplotlib的封裝,繪圖效果更符合現代人的審美觀。盡管如此,由于Matplotlib是基于GUI的繪圖模塊,因此存在特有的缺陷。
就筆者使用的經驗而言,Matplotlib主要存在兩大缺陷:首先,Matplotlib是一個靜態的繪圖模塊,即我們繪出的圖像是靜態的,就像是用看圖軟件打開圖片一樣,沒有網頁繪圖的交互式效果;其次,Matplotlib繪圖結果的分享很不方便,在繪圖結果分享給別人時只能以圖片的方式分享,別人看到的繪圖結果完全是靜態的,分享體驗很不好。Matplotlib一直以來都是Python可視化的主力軍,但是確實存在無法克服的缺陷,并且其他的Python繪圖模塊如Ggplot、Bokeh、Pygal等都比較小眾,繪圖功能比較單一,完成不了對Matplotlib的替代。
為了解決Python在可視化中存在的問題,Plotly應運而生,它是一個基于JavaScript的動態繪圖模塊。Plotly的繪圖效果與我們在網頁上看到的動態交互式繪圖結果是一樣的,其默認的繪圖結果是一個HTML網頁文件,通過瀏覽器就可以查看。我們可以把這個HTML文件分享給其他人,對方看到的效果與我們在本機上看到的效果完全一樣。
Plotly有著自己強大又豐富的繪圖庫,支持各種類型的繪圖方案。Plotly是基于JavaScript的繪圖庫,所以其繪圖結果可以與web應用無縫集成。總之,Plotly在繪圖模塊上是Matplotlib強有力的競爭對手,其繪圖的種類豐富、效果美觀、易于保存與分享等特點越來越受數據分析人士的喜愛,至少筆者對Plotly的喜愛勝于對Matplotlib的喜愛。Plotly最初是一款商業化的繪圖軟件,但是在2015年11月12日,Plotly開發團隊決定把該模塊的核心框架plotly.js開源,由此Plotly得到了快速發展。雖然在2016年6月,Plotly開發團隊才正式發布其Python-api文檔,在2017年 1月,Plotly 1.0才正式發布,但是這些都阻止不了程序員對Plotly的喜愛。自plotly.js開源之后,我們可以使用本地的離線模式進行繪圖,不依賴于官方的服務器,使得繪圖速度更快,效果與在線繪圖一樣,這也是目前使用Plotly繪圖的主流模式。
市面上有很多關于Matplotlib的可視化繪圖教程,但是還沒有Plotly的相關圖書,作為一款非常優秀的可視化繪圖模塊,市場上急需一本科普性的圖書。在本書創作之前,市面上就已經出現了電子版的對Plotly的簡單翻譯版本《Plotly中文說明1期》,這是極寬量化開源團隊在2017年1月的作品。極寬量化開源團隊是一群研究“Python量化投資”的愛好者自愿組織的一個團隊,該團隊成立的初衷是為國內量化投資領域做出自己的一份貢獻,目前已經成功初步翻譯Pyalgotrade、Seaborn、Statsmodels、Plotly等開源模塊,并公開上傳到網絡上,《Plotly中文說明1期》正是該團隊的一個作品。筆者作為極寬量化開源團隊《Plotly中文說明1期》項目的第一負責人,最初的想法只是單純地把Plotly的基礎內容簡單翻譯一下,以最簡單、最快速的方式呈現給大家,方便大家使用。但是后來電子工業出版社的黃愛萍編輯找我溝通寫作一本Plotly數據可視化的相關圖書,并認為Plotly發展很快,市場上需要一本Plotly的相關教材。經過一段時間的權衡,考慮到個人對Plotly的掌握程度、開源團隊對Plotly的熱情、個人在寫《PyQt5快速開發與實戰》時與黃編輯建立的良好友誼關系,以及《Plotly中文說明1期》存在的太多的缺陷等,也為了能讓更多的人接觸Plotly這個優秀的繪圖模塊,于是決定再次抽出大量的時間來完成《Python數據分析:基于Plotly的動態可視化繪圖》的創作,這就是本書的寫作背景。
Plotly是一個非常優秀的頂級繪圖模塊,如此優秀的開源模塊在國內的知名度卻不是很高,這對國內開發人員來說是一個很大的遺憾。頂級模塊在特定的領域達到家喻戶曉的程度是一個必然的趨勢,Plotly正是這種模塊,它在可視化繪圖領域的表現早晚會大放異彩。雖然目前Plotly在國內知名度不是很高,但其在可視化繪圖領域做到家喻戶曉是一個必然的趨勢,只是需要有人加速這種趨勢的演化過程,這就是本書存在的意義。
本書結構
本書的框架結構如下。
第1章是本書的快速入門部分,介紹Plotly的安裝環境,對在線繪圖與離線繪圖做了簡要的介紹。
第2章是基礎繪圖部分,對Plotly的一些常見的基礎繪圖如條形圖、柱狀圖、餅圖、氣泡圖、直方圖等做了一些介紹。
第3章是高級圖形部分,對Plotly的時間序列繪圖、表格繪圖、多坐標軸繪圖、多子圖繪圖、SVG繪圖等做了一些介紹,是Plotly繪圖的高級玩法。
第4章是Pandas部分,介紹了Pandas這個頂級數據分析模塊使用Plotly進行繪圖的方法。
第5章是金融繪圖部分,主要為金融領域的特殊圖形尤其是K線圖的繪制提供解決方案。
第6章是Matplotlib部分,主要介紹了如何把Matplotlib繪圖遷移到Plotly中。
第7章是網頁開發部分,主要介紹了Plotly在Python網頁開發框架Django和Flask中的應用。
第8章是GUI開發部分,主要介紹了Plotly在GUI開發框架PyQt 5中的應用。
第9章是機器學習部分,主要介紹了Plotly在基期學習框架Sklearn與PyTorch中的應用。
第10章是量化投資部分,主要介紹了Plotly在量化投資領域中的可視化應用。
第11章是其他語言應用部分,主要對其他語言如R、MATLAB、JavaScript的Plotly繪圖做了簡要的介紹。
如果你僅僅對Plotly的基礎繪圖有需求,那么前兩章的內容就能滿足你的需求;如果你對Plotly更高級的繪圖有需求,那么可以參考第3章的內容;對于本書的其他章節的內容,可以根據自己的實際情況有選擇性地閱讀,因為畢竟Plotly繪圖所涉及的范圍特別廣泛,并不是每一個人對這些領域都同時感興趣。
本書代碼與交流
本書的所有代碼都將保存在Github上,后續代碼更新也會以Github地址為準,網址是:https://github.com/sunshe35/PythonPlotlyCodes,讀者可自行下載。另外,為了方便讀者交流學習Plotly,本書建立了QQ群(群號:72203080)方便大家交流。
致謝
Plotly雖然僅僅是一個繪圖模塊,但是其應用場景非常廣泛,除了有Matplotlib的基本繪圖功能之外,其在Web開發、GUI開發、機器學習、量化投資等領域也有很好的應用場景。由于其應用場景特別廣泛,結合筆者自身知識的局限性,所以寫好本書需要多個人的共同努力,非常感謝這些作者對本書的創作所付出的汗水:王碩負責本書的Flask、PyTorch、JavaScript部分;邢夢來負責本書的Matplotlib部分;袁泉負責本書的基礎繪圖與Sklearn部分;吳娜負責本書的Pandas部分,其他部分都由本人孫洋洋負責。在Plotly的寫作過程中,還有一些人為本書的順利出版做出了貢獻:感謝山西證券金融科技部的陳亦蘇、成都數聯銘品科技有限公司的劉贛,以及極寬量化開源組的梁勇對本書網頁開發部分提供的幫助,感謝西南財經大學統計學院王彥鋒博士對本書R語言部分提供的幫助,感謝北京大學匯豐商學院碩士研究生扶祿城對本書MATLAB部分提供的幫助。最后,感謝我的父母與兄弟姐妹對我的關心與照顧,我現在取得的成果離不開你們對我的付出。
與讀者相識于Plotly是一種緣分,希望本書的出版能夠對讀者有所幫助,真心祝愿每一位讀者都學習順利、事業有成。


孫洋洋
2018年4月
內容簡介:

隨著信息技術的發展和硬件設備成本的降低,當今的互聯網存在海量的數據,想要快速從這些數據中獲取更多有效的信息,數據可視化是重要的一環。對Python語言來說,比較傳統的數據可視化模塊是Matplotlib,但是Matplotlib存在不夠美觀、靜態性、不易分享等缺點,限制了Python在數據可視化中的發展。為了解決這個問題,新型的動態可視化開源模塊Plotly應運而生。由于Plotly具有動態、美觀、易用、種類豐富等特性,所以一經問世就受到開發人員的喜愛。本書主要介紹Plotly在可視化各領域的應用,包括基礎繪圖、數據處理、網頁開發、程序GUI、機器學習、量化投資等,方便讀者對Plotly快速上手。本書絕大部分代碼用Python編寫,同時也給出了Plotly在R語言、MATLAB和JavaScript中的應用案例。

目錄:

第1章 快速開始 1
1.1 Plotly簡介 1
1.2 安裝與安裝環境 6
1.3 在線初始化 6
1.4 在線繪圖隱私說明 8
1.5 開始在線繪圖 8
1.6 使用離線繪圖庫 11
1.7 參數解讀 13
1.8 查看幫助 14
第2章 Plotly基礎圖形 16
2.1 基礎案例解讀 17
2.2 基本繪圖流程 19
2.3 散點圖 20
2.3.1 基本案例 20
2.3.2 樣式設置 22
2.3.3 應用案例 24
2.3.4 參數解讀 26
2.4 氣泡圖 28
2.4.1 基本案例 28
2.4.2 樣式設置 29
2.4.3 縮放設置 30
2.4.4 參數解讀 33
2.5 線形圖 33
2.5.1 基本案例 33
2.5.2 數據缺口與連接 35
2.5.3 數據插值 38
2.5.4 填充線形圖 41
2.5.5 應用案例 45
2.5.6 參數解讀 49
2.6 柱狀圖 49
2.6.1 基本柱狀圖 49
2.6.2 柱狀簇 50
2.6.3 層疊柱狀圖 52
2.6.4 瀑布式柱狀圖 54
2.6.5 圖形樣式設置 56
2.6.6 應用案例 58
2.6.7 參數解讀 60
2.7 水平條形圖 61
2.7.1 基本案例 61
2.7.2 應用案例 64
2.7.3 參數解讀 70
2.8 甘特圖 70
2.8.1 基本甘特圖 70
2.8.2 甘特圖(按數字索引) 71
2.8.3 甘特圖(按類別索引) 72
2.8.4 應用案例 74
2.9 面積圖 76
2.9.1 基本面積圖 76
2.9.2 內部填充面積圖 78
2.9.3 堆積面積圖 80
2.10 直方圖 83
2.10.1 基本直方圖 83
2.10.2 重疊直方圖 84
2.10.3 層疊直方圖 85
2.10.4 累積直方圖 87
2.10.5 應用案例 88
2.10.6 參數解讀 89
2.11 餅圖 90
2.11.1 基本餅圖 90
2.11.2 環形餅圖 91
2.11.3 樣式設置 92
2.11.4 應用案例 93
2.11.5 參數解讀 98
2.12 更多案例 99
2.13 Plotly對象概覽 100
第3章 Plotly高級圖形 110
3.1 時間序列 110
3.1.1 使用方法 110
3.1.2 時間范圍約束 111
3.2 滑動選擇控件 113
3.3 表格 117
3.3.1 入門案例 117
3.3.2 添加鏈接 118
3.3.3 使用Pandas 120
3.3.4 改變大小與顏色 121
3.3.5 表格與圖 124
3.4 多圖表 129
3.5 多個坐標軸 130
3.5.1 雙坐標軸 130
3.5.2 多坐標軸 132
3.5.3 共享坐標軸 136
3.6 多子圖 138
3.6.1 雙子圖(方法一) 138
3.6.2 雙子圖(方法二) 139
3.6.3 多子圖(方法一) 141
3.6.4 多子圖(方法二) 142
3.6.5 分割視圖區間 144
3.6.6 子圖共享坐標軸(方法一) 147
3.6.7 子圖共享坐標軸(方法二) 149
3.6.8 子圖坐標軸自定義 152
3.6.9 嵌入式子圖 154
3.6.10 混合圖 155
3.7 繪制SVG 159
3.7.1 線形圖的繪制 160
3.7.2 線形圖應用:創建圖形的切線 163
3.7.3 矩形圖的繪制 166
3.7.4 矩形圖應用:設置時間序列區域高亮顯示 169
3.7.5 圓形圖的繪制 171
3.7.6 圓形圖應用:高亮顯示散點圖的聚集簇 174
第4章 Plotly與Pandas 178
4.1 簡單快速入門 178
4.1.1 基本線形圖 179
4.1.2 基本散點圖 180
4.1.3 基本柱狀圖 181
4.2 使用cufflinks繪圖 183
4.2.1 安裝cufflinks 183
4.2.2 快速入門 183
4.2.3 快速獲取數據 185
4.2.4 自定義繪圖 186
4.2.5 常見經典圖形 188
4.2.6 更多案例 193
第5章 金融繪圖 194
5.1 快速繪制K線圖 194
5.1.1 檢查Plotly版本 194
5.1.2 快速繪制OHLC(美國線)圖 194
5.1.3 快速繪制蠟燭圖 197
5.2 K線圖的優化 199
5.2.1 過濾非交易時間 199
5.2.2 設置形狀、顏色和注釋 203
5.2.3 添加技術指標 207
5.3 使用自定義的數據 211
5.4 高級金融繪圖 214
5.4.1 入門案例 214
5.4.2 綜合案例 215
第6章 Matplotlib 217
6.1 Matplotlib簡介 217
6.2 安裝Matplotlib 218
6.3 調整Matplotlib參數 220
6.4 常用的API功能 222
6.5 線性函數 223
6.6 增加子圖 225
6.7 確定坐標范圍 228
6.8 概率圖 229
6.9 散點圖 232
6.10 柱狀圖 235
6.11 更多擴展 239
第7章 Plotly與網頁開發 240
7.1 Plotly在Django中的應用 240
7.1.1 安裝環境搭建 240
7.1.2 安裝環境測試 241
7.1.3 入門案例一 243
7.1.4 入門案例二 247
7.1.5 更多案例擴展 254
7.1.6 應用案例一 256
7.1.7 應用案例二 258
7.2 Plotly在Flask中的應用 267
7.2.1 安裝Flask 269
7.2.2 最小的Web應用 269
7.2.3 模板渲染 270
7.2.4 入門案例一 272
7.2.5 入門案例二 275
7.2.6 應用案例 283
第8章 Plotly與GUI開發 293
8.1 PyQt的安裝 295
8.2 案例解讀 295
8.3 設置提升的窗口部件 298
8.4 Plotly_PyQt 5的使用 300
8.5 更多擴展 304
8.6 Plotly與PyQt 5.6的結合 305
8.7 更多擴展 309
8.8 應用案例:展示產品組合信息 309
第9章 Plotly與機器學習 316
9.1 Plotly在Sklearn中的應用 316
9.1.1 分類問題 316
9.1.2 回歸問題 319
9.1.3 聚類問題 321
9.2 PyTorch可視化工具 326
9.2.1 Visdom簡介 326
9.2.2 安裝Visdom 327
9.2.3 Visdom與Plotly 328
9.2.4 Visdom基本概念 328
9.2.5 使用方法 329
9.2.6 Visdom與PyTorch 345
第10章 Plotly在量化投資中的應用 346
第11章 Plotly在其他語言中的應用 355
11.1 Plotly在R語言中的應用 355
11.1.1 安裝R語言 355
11.1.2 安裝Plotly模塊 356
11.1.3 Plotly應用分析 356
11.1.4 更多擴展 362
11.2 Plotly在MATLAB中的應用 363
11.2.1 下載與安裝 363
11.2.2 基礎入門 365
11.2.3 經典案例 367
11.2.4 更多擴展 376
11.3 Plotly在JavaScript語言中的應用 377
11.3.1 基礎入門 377
11.3.2 散點圖 380
11.3.3 條形圖 383
11.3.4 扇形圖 384
11.3.5 更多擴展 386
序: