TOP
0
0
魅麗。花火原創小說66折起
Python Qt GUI與數據可視化編程(簡體書)
滿額折

Python Qt GUI與數據可視化編程(簡體書)

人民幣定價:99 元
定  價:NT$ 594 元
優惠價:87517
領券後再享89折
無庫存,下單後進貨(採購期約45個工作天)
可得紅利積點:15 點
相關商品
商品簡介
作者簡介
名人/編輯推薦
目次

商品簡介

本書介紹在Python中使用PyQt5和其他模塊進行GUI和數據可視化編程的方法。第一部分介紹PyQt5設計GUI程序的基本框架,包括GUI應用程序的基本結構、窗體UI可視化設計與窗體業務邏輯的設計、信號與槽的特點和使用等。第二部分介紹GUI程序設計中一些主要功能模塊的使用,包括基本界面組件、事件處理、數據庫、繪圖、多媒體等。第三部分先介紹使用PyQtChart和PyQtDataVisualization進行二維和三維數據可視化設計的方法,再介紹將Matplotlib嵌入PyQt5 GUI應用程序窗口界面中進行數據可視化的編程方法。通過研讀本書,讀者可以掌握使用PyQt5、PyQtChart、Matplotlib等模塊進行GUI應用程序和數據可視化設計的方法。
本書適合具有Python編程基礎,並想通過Python設計GUI應用程序或在GUI應用程序中實現數據可視化的讀者閱讀和參考。

作者簡介

王維波 博士

大學教師,從事測控技術與儀器專業相關的工作,主要研究地球物理探測儀器開發、監測數據處理方法和軟件開發。著有《Qt 5.9 C++開發指南》一書。


栗寶鵑 博士

科研人員,主要從事地球物理、水下探測、遙感等專業方向的數據處理和圖像識別方面的研究工作,在日常工作中常使用Qt和Python解決實際問題。
張曉東博士,大學教師,從事自動化專業相關的教學工作,研究方向主要是優化算法、最優控制和智能控制。具有豐富的編程經驗,善於通過Qt C++和Python的結合提高算法效率。

名人/編輯推薦

Python Qt5 GUI快速編程
PyQt5快速入門豐富的案例提供代碼下載




PyQt5教程書籍 pyqt5快速開發實例教程 Python Qt5 GUI快速編程 示例豐富的Python GUI編程和數據可視化編程的實用指南
PyQt5是Qt 5 C++類庫的Python綁定,使用PyQt5可以在Python 中開發專業的GUI 應用程序。本書介紹PyQt5開發Python GUI應用程序的編程方法,還介紹在GUI 程序中嵌入二維和三維數據可視化功能的編程方法,特別是將Matplotlib 嵌入GUI 界面的面向對象編程方法。
本書包含大量完整示例程序,使學習過程具有可跟隨性和可操作性,適合具有Python編程基礎,需要使用Python設計GUI應用程序,或在GUI應用程序中嵌入數據可視化功能的讀者。

本書主要內容包括:● 基於PyQt5的GUI應用程序的技術框架和工具軟件的使用;● GUI程序設計中常用界面組件和功能模塊的使用;● 使用PyQtChart、PyQtDataVisualization、Matplotlib在GUI程序中嵌入二維和三維數據可視化功能的編程方法。

目次

目 錄
第 一部分 PyQt5開發基礎
第 1章 開發環境安裝 2
1.1 Python 2
1.1.1 Python 簡介 2
1.1.2 Python的下載與安裝 2
1.1.3 IDLE的基本使用 3
1.1.4 安裝Python包 4
1.2 Qt 5
1.2.1 Qt 簡介 5
1.2.2 Qt 的下載與安裝 5
1.2.3 Qt的幾個工具軟件 7
1.2.4 Qt Creator的設置 7
1.3 PyQt5 8
1.3.1 PyQt5簡介 8
1.3.2 PyQt5安裝 9
1.3.3 在IDLE中開啟對PyQt5的代碼提示功能 10
第 2章 PyQt5 GUI程序框架 11
2.1 PyQt5 GUI程序的基本框架 11
2.2 使用可視化設計窗體的GUI程序 12
2.2.1 用UI Designer可視化設計窗體 13
2.2.2 將ui文件編譯為py文件 16
2.2.3 使用Ui_FormHello類的GUI程序框架 18
2.2.4 界面與邏輯分離的GUI程序框架 19
2.3 信號與槽的使用 23
2.3.1 信號與槽功能概述 23
2.3.2 Qt Creator的使用 23
2.3.3 窗體可視化設計 25
2.3.4 界面組件佈局管理 26
2.3.5 組件的信號與內建槽函數的關聯 29
2.3.6 PyQt5 GUI項目程序框架 30
2.3.7 為組件的內建信號編寫槽函數 35
2.4 自定義信號的使用 39
2.4.1 信號與槽的一些特點和功能 39
2.4.2 自定義信號使用示例 40
2.4.3 使用信號與槽的一些注意事項 43
2.5 資源文件的使用 43
2.5.1 功能概述 43
2.5.2 窗體可視化設計 44
2.5.3 創建和使用資源文件 44
2.5.4 窗體文件和資源文件的編譯 45
2.5.5 窗體業務邏輯類的設計 46
2.5.6 為應用程序設置圖標 47
2.6 從Qt C++類庫到PyQt5 47
2.6.1 幫助信息的查找 47
2.6.2 正確導入模塊中的類 49
2.6.3 部分類和接口函數的差異 50
2.6.4 數據類型對應關係 51
2.7 3個單窗體GUI項目模板 52
2.7.1 概述 52
2.7.2 dialogApp項目模板 53
2.7.3 widgetApp項目模板 54
2.7.4 mainWindowApp項目模板 55
2.7.5 使用項目模板和實例源程序 56
2.7.6 在Eric中編輯和運行示例程序 57

第二部分 GUI應用程序設計
第3章 常用界面組件的使用 60
3.1 數據輸入輸出 60
3.2 QPushButton 62
3.3 QSlider和QProgressBar 64
3.4 日期時間數據 66
3.4.1 日期時間類和界面組件 66
3.4.2 日期時間數據的獲取並轉換為字符串 67
3.4.3 字符串轉換為日期時間 68
3.4.4 QLineEdit的inputMask 68
3.5 定時器QTimer 69
3.6 下拉列表框QComboBox 70
3.6.1 QComboBox功能概述 70
3.6.2 簡單的ComboBox操作 71
3.6.3 帶用戶數據的ComboBox 72
3.6.4 QComboBox常用函數總結 73
3.7 QMainWindow與QAction 73
3.7.1 功能簡介 73
3.7.2 窗體可視化設計 75
3.7.3 界面操作功能的代碼實現 77
3.8 QListWidget和QToolButton 80
3.8.1 功能概述 80
3.8.2 窗體可視化設計 81
3.8.3 QToolButton與下拉式菜單 84
3.8.4 QListWidget的操作 85
3.8.5 創建右鍵快捷菜單 88
3.9 QTreeWidget和QDockWidget 88
3.9.1 功能概述 88
3.9.2 窗體可視化設計 90
3.9.3 QTreeWidget操作 91
3.9.4 QLabel和QPixmap顯示圖片 96
3.9.5 QDockWidget的操作 97
3.10 QTableWidget 98
3.10.1 QTableWidget概述 98
3.10.2 窗體設計與初始化 99
3.10.3 QTableWidget操作 100
3.11 容器類組件與佈局設計 105
3.11.1 QGroupBox組件與水平佈局 106
3.11.2 佈局的layoutStretch屬性 106
3.11.3 網格狀佈局 107
3.11.4 分割條 108
第4章 Model/View結構 109
4.1 Model/View結構 109
4.1.1 Model/View結構基本原理 109
4.1.2 Model(數據模型) 110
4.1.3 View(視圖) 111
4.1.4 Delegate(代理) 111
4.1.5 Model/View結構的一些概念 112
4.2 QFileSystemModel 114
4.2.1 QFileSystemModel類的基本功能 114
4.2.2 QFileSystemModel的使用 114
4.3 QStringListModel 116
4.3.1 QStringListModel功能概述 116
4.3.2 QStringListModel的使用 116
4.4 QStandardItemModel 119
4.4.1 功能概述 119
4.4.2 界面設計 120
4.4.3 QStandardItemModel的使用 120
4.5 自定義代理 128
4.5.1 自定義代理的功能 128
4.5.2 自定義代理類的基本設計要求 128
4.5.3 基於QDoubleSpinBox的自定義代理類 129
4.5.4 基於QComboBox的自定義代理類 130
4.5.5 自定義代理類的使用 131
第5章 事件處理 133
5.1 默認事件處理 133
5.1.1 應用程序的事件循環 133
5.1.2 事件類型與默認的事件處理函數 133
5.1.3 事件與信號的關係 137
5.2 事件攔截與事件過濾 139
5.2.1 event()函數的作用 139
5.2.2 事件過濾器 140
5.2.3 事件隊列的及時處理 141
5.3 拖放事件與拖放操作 142
5.3.1 拖放操作相關事件 142
5.3.2 外部文件拖放操作示例 143
5.4 具有拖放操作功能的組件 146
5.4.1 功能概述 146
5.4.2 界面設計與初始化 147
5.4.3 拖放操作屬性的顯示 148
5.4.4 拖放屬性的設置 149
5.4.5 通過事件過濾器實現項的刪除 150
第6章 對話框與多窗口設計 151
6.1 標準對話框 151
6.1.1 概述 151
6.1.2 QFileDialog對話框 152
6.1.3 QColorDialog對話框 154
6.1.4 QFontDialog對話框 154
6.1.5 QProgressDialog對話框 155
6.1.6 QInputDialog輸入對話框 156
6.1.7 QMessageBox消息對話框 157
6.2 自定義對話框及其使用 159
6.2.1 對話框的不同調用方式 159
6.2.2 示例項目的文件組成 160
6.2.3 主窗口的設計與初始化 161
6.2.4 對話框QmyDialogSize的創建和使用 163
6.2.5 對話框QmyDialogHeaders的創建和使用 165
6.2.6 對話框QmyDialogLocate的創建和使用 166
6.3 多窗口應用程序 170
6.3.1 主要的窗體類及其用途 170
6.3.2 窗體類重要特性的設置 170
6.3.3 多窗口應用程序設計示例 172
6.4 MDI應用程序設計 179
6.4.1 MDI簡介 179
6.4.2 文檔窗體類QmyFormDoc的設計 180
6.4.3 主窗口設計與子窗口的使用 181
第7章 數據庫 185
7.1 Qt SQL模塊概述 185
7.1.1 Qt SQL支持的數據庫 185
7.1.2 SQLite數據庫 185
7.1.3 Qt SQL模塊的主要類 187
7.2 QSqlTableModel的使用 188
7.2.1 功能概述 188
7.2.2 窗體可視化設計 190
7.2.3 窗體業務邏輯類的設計和初始化 190
7.2.4 打開數據庫和數據表 191
7.2.5 添加、插入與刪除記錄 197
7.2.6 保存與取消修改 198
7.2.7 設置和清除照片 199
7.2.8 數據記錄的遍歷 199
7.2.9 記錄的排序 200
7.2.10 記錄的過濾 200
7.3 QSqlQueryModel的使用 201
7.3.1 QSqlQueryModel功能概述 201
7.3.2 窗體業務邏輯類的設計和初始化 202
7.3.3 打開數據庫和查詢數據 202
7.3.4 記錄移動 205
7.4 QSqlQuery的使用 206
7.4.1 QSqlQuery基本用法 206
7.4.2 QSqlQueryModel和QSqlQuery聯合使用 207
7.5 QSqlRelationalTableModel的使用 215
7.5.1 關係數據表和示例功能 215
7.5.2 關係數據模型功能實現 216
第8章 繪圖 219
8.1 QPainter繪圖 219
8.1.1 QPainter繪圖系統 219
8.1.2 QPen的主要功能 221
8.1.3 QBrush的主要功能 223
8.1.4 漸變填充 224
8.1.5 QPainter繪製基本圖形 227
8.2 坐標系統和坐標變換 230
8.2.1 坐標變換函數 230
8.2.2 坐標變換繪圖實例 231
8.2.3 視口和窗口 234
8.2.4 繪圖疊加的效果 236
8.3 自定義界面組件 237
8.3.1 功能概述 237
8.3.2 自定義QWidget子類QmyBattery 237
8.3.3 QmyBattery類的使用 239
8.4 Graphics View繪圖架構 241
8.4.1 場景、視圖與圖形項 241
8.4.2 Graphics View的坐標系統 242
8.4.3 Graphics View相關的類 243
8.4.4 Graphics View程序基本結構 246
8.4.5 Graphics View繪圖程序示例 250
第9章 文件 261
9.1 文件操作相關類概述 261
9.1.1 文件操作接口類QFile 261
9.1.2 文件流操作類QTextStream和QDataStream 262
9.1.3 目錄和文件操作相關的類 262
9.2 文本文件讀寫 263
9.2.1 功能概述 263
9.2.2 QFile讀寫文本文件 263
9.2.3 QFile和QTextStream結合讀寫文本文件 266
9.2.4 Python內建函數讀寫文本文件 268
9.3 二進制文件讀寫 269
9.3.1 基礎知識和工具軟件 269
9.3.2 QDataStream功能概述 271
9.3.3 QDataStream流化數據讀寫 272
9.3.4 QDataStream原始數據讀寫 281
9.4 目錄和文件操作 288
9.4.1 目錄和文件操作相關的類 288
9.4.2 示例功能概述 288
9.4.3 QFile類 290
9.4.4 QFileInfo類 291
9.4.5 QDir類 292
9.4.6 QFileSystemWatcher類 294
第 10章 多媒體 297
10.1 PyQt5多媒體模塊功能概述 297
10.2 音頻播放 298
10.2.1 使用QMediaPlayer播放音樂文件 298
10.2.2 使用QSoundEffect和QSound播放音效文件 303
10.3 音頻輸入 304
10.3.1 使用QAudioRecorder錄製音頻 304
10.3.2 使用QAudioInput獲取音頻輸入 310
10.4 視頻播放 317
10.4.1 在QVideoWidget上顯示視頻 317
10.4.2 在QGraphicsVideoItem上播放視頻 321
10.5 攝像頭的使用 322
10.5.1 攝像頭操作概述 322
10.5.2 示例功能和界面可視化設計 324
10.5.3 使用攝像頭拍照 324
10.5.4 使用QMediaRecorder通過攝像頭錄像 328
第 11章 GUI設計增強技術 329
11.1 多語言界面 329
11.1.1 多語言界面設計概述 329
11.1.2 多語言界面設計示例 331
11.2 QSS定制界面 336
11.2.1 Qt樣式表的作用 336
11.2.2 Qt樣式表句法 337
11.2.3 Qt樣式表的使用 342
第三部分 數據可視化
第 12章 PyQtChart二維繪圖 346
12.1 PyQtChart概述 346
12.1.1 模塊安裝與基本功能 346
12.1.2 一個簡單的PyQtChart繪圖程序 347
12.1.3 圖表的主要組成部分 348
12.2 QChart繪製折線圖 350
12.2.1 示例功能概述與界面設計 350
12.2.2 QPen屬性設置對話框設計 351
12.2.3 主窗口業務邏輯類初始化 353
12.2.4 圖表各組成部件的屬性設置 356
12.3 QChart繪圖高級功能 365
12.3.1 功能概述 365
12.3.2 自定義類QmyChartView 366
12.3.3 主窗口可視化設計 368
12.3.4 繪圖功能的實現 368
12.4 對數坐標軸和多坐標軸 373
12.4.1 功能概述 373
12.4.2 主窗口可視化設計 374
12.4.3 界面和圖表初始化 374
12.4.4 載入數據文件並繪製曲線 375
12.5 餅圖和各種柱狀圖 377
12.5.1 功能概述 377
12.5.2 窗口初始化與數據準備 378
12.5.3 其他界面操作功能的實現 381
12.5.4 柱狀圖 382
12.5.5 堆疊柱狀圖 387
12.5.6 百分比柱狀圖 388
12.5.7 餅圖 390
12.6 蠟燭圖和日期時間坐標軸 392
12.6.1 功能概述 392
12.6.2 界面和圖表初始化 394
12.6.3 繪圖功能的實現 395
12.7 區域填充圖 399
12.7.1 功能概述 399
12.7.2 界面和圖表初始化 400
12.7.3 繪圖功能的實現 402
12.8 極坐標圖 405
12.8.1 功能概述 405
12.8.2 繪製極坐標圖 406
12.8.3 其他功能的實現 408
第 13章 PyQtDataVisualization三維繪圖 411
13.1 PyQtDataVisualization模塊概述 411
13.1.1 模塊安裝與導入 411
13.1.2 模塊中主要的類 411
13.2 三維柱狀圖 413
13.2.1 功能概述 413
13.2.2 窗體可視化設計 413
13.2.3 初始化創建三維柱狀圖 414
13.2.4 其他功能的實現 417
13.3 三維散點圖 424
13.3.1 功能概述 424
13.3.2 創建三維散點圖 425
13.3.3 散點數據管理 427
13.4 三維曲面圖 429
13.4.1 功能概述 429
13.4.2 三維曲面圖 429
13.4.3 三維地形圖 434
第 14章 Matplotlib數據可視化 437
14.1 Matplotlib的基本用法 437
14.1.1 Matplotlib的安裝 437
14.1.2 一個腳本化的繪圖程序 438
14.1.3 GUI程序中的Matplotlib繪圖 439
14.2 圖的主要元素的面向對象操作 443
14.2.1 圖的主要組成元素 443
14.2.2 示例程序功能和窗體可視化設計 445
14.2.3 界面創建與初始化繪圖 446
14.2.4 Figure對象的操作 450
14.2.5 Axes子圖的操作 453
14.2.6 曲線設置 456
14.2.7 x軸和y軸設置 458
14.3 交互操作 464
14.3.1 交互功能概述 464
14.3.2 界面構造與初始化繪圖 466
14.3.3 界面其他功能的實現 469
14.3.4 交互事件的處理 469
14.4 典型二維圖的繪製 471
14.4.1 自定義繪圖組件類QmyFigureCanvas 471
14.4.2 QmyFigureCanvas類的使用 473
14.4.3 直方圖 475
14.4.4 填充圖 476
14.4.5 餅圖 477
14.4.6 火柴杆圖 478
14.4.7 極坐標圖 480
14.5 三維數據繪圖 482
14.5.1 三維數據繪圖概述 482
14.5.2 窗體初始化 483
14.5.3 繪製三維圖 486
14.5.4 三維數據繪製二維圖 487
14.5.5 colormap 488

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 517
無庫存,下單後進貨
(採購期約45個工作天)

暢銷榜

客服中心

收藏

會員專區