TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
Python科學計算(附光碟)(簡體書)
滿額折

Python科學計算(附光碟)(簡體書)

人民幣定價:98 元
定價
:NT$ 588 元
優惠價
87512
絕版無法訂購
相關商品
商品簡介
作者簡介
名人/編輯推薦
目次
書摘/試閱

商品簡介

《Python科學計算》介紹如何用python開發科學計算的應用程序,除了介紹數值計算之外,還著重介紹如何制作交互式的2d、3d圖像,如何設計精巧的程序界面,如何與c語言編寫的高速計算程序結合,如何編寫聲音、圖像處理算法等內容。書中涉及的python擴展庫包括numpy、scipy、sympy、matplotlib、traits、traitsui、chaco、tvtk、mayavi、vpython、opencv等,涉及的應用領域包括數值運算、符號運算、二維圖表、三維數據可視化、三維動畫演示、圖像處理以及界面設計等。書中以大量實例引導讀者逐步深入學習,每個實例程序都有詳盡的解釋,并都能在《Python科學計算》推薦的運行環境中正常運行。此外,《Python科學計算》附有大量的圖表和插圖,力求減少長篇的理論介紹和公式推導,以便讀者通過實例和數據學習并掌握理論知識。

作者簡介

張若愚,畢業于華中理工大學(現華中科技大學)通信工程專業,2004年獲日本姬路工業大學(現兵庫縣立大學)碩士學位。畢業後于日本神戶制鋼綜合研究所從事研究開發工作至今,研究方向為:嵌入式DSP信號處理系統開發,嵌入式MCU控制系統開發,工業控制軟件開發,信號處理、數據處理以及生產系統的計算機模擬。在工作中他積極采用Python作為主要編程語言,在數據處理、信號分析、工業控制、算法模擬等領域取得了較好的研究成果。已完成的研究課題有:嵌入式聲音分離系統、車載音響設備、超聲波探傷系統、壓縮機系統的數字模擬等。

名人/編輯推薦

《Python科學計算》主要特色:如果您有一定的Python編程經驗,經常需要對數值數據做一些處理、分析、可視化的工作,那么《Python科學計算》的內容十分適合您閱讀。
如果您是程序員,即使工作與科學計算無關,《Python科學計算》所介紹的各種擴展庫也將能豐富您的工具箱,為您的工作提供新的解決方案。
如果您是科研人員,即使對Python或編程并不十分了解,但只要花一點時間學習Python語言以及《Python科學計算》介紹的內容,就能讓您的工作效率大幅提高。
附贈光盤中包含書中用到的Python擴展程序、學習《Python科學計算》時用到的工具軟件以及書中所有實例的源程序。
歷時三年,精心編寫。Enthought公司CEO Eric Jones作序推薦,《Python科學計算》所提供的一站式服務,能夠指導讀者從最初的入門直到創建一個漂亮的、全功能的分析與模擬應用程序。
NumPy——;快速處理數據,SymPy——;符號運算好幫手,Traits——;為Python添加類型定義,Chaco——;交互式圖表,Mayavi——;更方便的可視化,OpenCV——;圖像處理和計算機視覺,數字信號、濾波器、頻域處理,用C語言提高計算效率,SciPy——;數值計算庫,matplotlib——;繪制精美的圖表,TraitsUI——;輕松制作用戶界面,TVTK——;數據的三維可視化,VPython——;制作3D演示動畫,聲音與視頻數據處理,動畫模擬、分形幾何。
《Python科學計算》讀者對象:《Python科學計算》適合科研人員閱讀,但書中介紹的NumPy數據處理、matpltlib繪圖、TraltsUI界面應用程序開發、各種格式的數據文件的處理以及用C語言編寫擴展等內容,并非局限于科學計算領域,也適合一般的Python開發人員閱讀。

目次

第1章 軟件包的安裝和介紹
1.1 python簡介
1.2 安裝軟件包
1.2.1 python(x,y)
1.2.2 enthought python distribution(epd)
1.3 方便的開發工具
1.3.1 ipython
1.3.2 spyder
1.3.3 wing ide
1.4 函數庫介紹
1.4.1 數值計算庫
1.4.2 符號計算庫
1.4.3 界面設計
1.4.4 繪圖與可視化
1.4.5 圖像處理和計算機視覺

第2章 numpy--快速處理數據
2.1 ndarray對象
2.1.1 創建數組
2.1.2 存取元素
2.1.3 多維數組
2.1.4 結構數組
2.1.5 內存結構
2.2 ufunc運算
2.2.1 四則運算
2.2.2 比較和布爾運算
2.2.3 自定義ufunc函數
2.2.4 廣播
2.2.5 ufunc函數的方法
2.3 多維數組的下標存取
2.3.1 下標對象
2.3.2 整數數組作為下標
2.3.3 一個復雜的例子
2.3.4 布爾數組作為下標
2.4 龐大的函數庫
2.4.1 求和、平均值、方差
2.4.2 最值和排序
2.4.3 多項式函數
2.4.4 分段函數
2.4.5 統計函數
2.5 線性代數
2.5.1 各種乘積運算
2.5.2 解線性方程組
2.6 掩碼數組
2.7 文件存取
2.8 內存映射數組

第3章 scipy--數值計算庫
3.1 常數和特殊函數
3.2 優化--optimize
3.2.1 最小二乘擬合
3.2.2 函數最小值
3.2.3 非線性方程組求解
3.3 插值--interpolate
3.3.1 b樣條曲線插值
3.3.2 外推和spline擬合
3.3.3 二維插值
3.4 數值積分--integrate
3.4.1 球的體積
3.4.2 解常微分方程組
3.5 信號處理--signal
3.5.1 中值濾波
3.5.2 濾波器設計
3.6 圖像處理--ndimage
3.6.1 膨脹和腐蝕
3.6.2 hit和miss
3.7 統計--stats
3.7.1 連續和離散概率分布
3.7.2 二項、泊松、伽瑪分布
3.8 嵌入c語言程序--weave

第4章 sympy--符號運算好幫手
4.1 從例子開始
4.1.1 封面上的經典公式
4.1.2 球體體積
4.2 數學表達式
4.2.1 符號
4.2.2 數值
4.2.3 運算符和函數
4.3 符號運算
4.3.1 表達式變換和化簡
4.3.2 方程
4.3.3 微分
4.3.4 微分方程
4.3.5 積分
4.4 其他功能
4.4.1 平面幾何
4.4.2 繪圖

第5章 matplotlib--繪制精美的圖表
5.1 快速繪圖
5.1.1 使用pyplot模塊繪圖
5.1.2 以面向對象方式繪圖
5.1.3 配置屬性
5.1.4 繪制多個子圖
5.1.5 配置文件
5.1.6 在圖表中顯示中文
5.2 artist對象
5.2.1 artist對象的屬性
5.2.2 figure容器
5.2.3 axes容器
5.2.4 axis容器
5.2.5 artist對象的關系
5.3 坐標變換和注釋
5.3.1 4種坐標系
5.3.2 坐標變換的步驟
5.3.3 制作陰影效果
5.3.4 添加注釋
5.4 繪圖函數簡介
5.4.1 對數坐標圖
5.4.2 極坐標圖
5.4.3 柱狀圖
5.4.4 散列圖
5.4.5 圖像
5.4.6 等值線圖
5.4.7 三維繪圖

第6章 traits--為python添加類型定義
6.1 開發背景
6.2 trait屬性的功能
6.3 trait類型對象
6.4 trait的元數據
6.5 預定義的trait類型
6.6 property屬性
6.7 trait屬性監聽
6.8 event和button屬性
6.9 trait屬性的從屬關系
6.10 動態添加trait屬性
6.11 創建自己的trait類型
6.11.1 從traittype繼承
6.11.2 使用trait()
6.11.3 定義traithandler類

第7章 traitsui--輕松制作用戶界面
7.1 默認界面
7.2 用view定義界面
7.2.1 外部視圖和內部視圖
7.2.2 多模型視圖
7.2.3 group對象
7.2.4 配置視圖
7.3 用handler控制界面和模型
7.3.1 用handler處理事件
7.3.2 controller和uiinfo對象
7.3.3 響應trait屬性的事件
7.4 屬性編輯器
7.4.1 編輯器演示程序
7.4.2 對象編輯器
7.4.3 字符串列表編輯器
7.4.4 對象列表編輯器
7.5 菜單、工具條和狀態欄
7.6 設計自己的編輯器
7.6.1 trait編輯器的工作原理
7.6.2 制作matplotlib的編輯器
7.6.3 csv數據繪圖工具

第8章 chaco--交互式圖表
8.1 面向腳本繪圖
8.2 面向應用繪圖
8.2.1 多條曲線
8.2.2 plot對象的結構
8.2.3 編輯繪圖屬性
8.2.4 容器(container)
8.3 添加交互工具
8.3.1 平移和縮放
8.3.2 選取范圍
8.3.3 選取數據點
8.3.4 套索工具
8.4 二次開發
8.4.1 用kiva庫在數組上繪圖
8.4.2 enable庫的組件
8.4.3 設計圓形選擇工具
8.4.4 制作動畫演示

第9章 tvtk--數據的三維可視化
9.1 流水線(pipeline)
9.1.1 顯示圓錐
9.1.2 用ivtk觀察流水線
9.2 數據集(dataset)
9.2.1 imagedata
9.2.2 rectilineargrid
9.2.3 structuredgrid
9.2.4 polydata
9.3 可視化實例
9.3.1 切面
9.3.2 等值面
9.3.3 流線
9.4 tvtk的改進
9.4.1 tvtk的基本用法
9.4.2 trait屬性
9.4.3 序列化(pickling)
9.4.4 集合迭代
9.4.5 數組操作

第10章 mayavi--更方便的可視化
10.1 用mlab快速繪圖
10.1.1 點和線
10.1.2 mayavi的流水線
10.1.3 二維圖像的可視化
10.1.4 網格面
10.1.5 修改和控制流水線
10.1.6 標量場
10.1.7 矢量場
10.2 mayavi和tvtk之間的關系
10.2.1 顯示tvtk流水線
10.2.2 兩條流水線之間的關系
10.3 mayavi應用程序
10.3.1 操作流水線
10.3.2 命令行和對象瀏覽器
10.4 將mayavi嵌入到界面中

第11章 vpython--制作3d演示動畫
11.1 場景、物體和照相機
11.1.1 控制場景窗口
11.1.2 控制照相機
11.1.3 模型的屬性
11.1.4 三維模型
11.2 制作動畫演示
11.2.1 簡單動畫
11.2.2 盒子中反彈的球
11.3 與場景交互
11.3.1 響應鍵盤事件
11.3.2 響應鼠標事件
11.4 用界面控制場景
11.5 創建復雜模型
11.5.1 faces()的用法
11.5.2 讀入模型數據

第12章 opencv--圖像處理和計算機視覺
12.1 存儲圖像數據的mat對象
12.1.1 mat對象和numpy數組
12.1.2 像素點類型
12.1.3 其他數據類型
12.1.4 vector類型
12.1.5 在圖像上繪圖
12.2 圖像處理
12.2.1 二維卷積
12.2.2 形態學運算
12.2.3 填充--floodfill
12.2.4 去瑕疵--inpaint
12.3 圖像變換
12.3.1 幾何變換
12.3.2 重映射--remap
12.3.3 直方圖統計
12.3.4 二維離散傅立葉變換
12.4 圖像識別
12.4.1 用霍夫變換檢測直線和圓
12.4.2 圖像分割
12.4.3 用surf進行特征匹配

第13章 數據和文件
13.1 聲音的輸入輸出
13.1.1 讀寫wav文件
13.1.2 用pyaudio播放和錄音
13.2 視頻的輸入輸出
13.2.1 讀寫視頻文件
13.2.2 安裝視頻編碼
13.3 讀寫hdf5文件
13.4 讀寫excel文件
13.4.1 寫excel文件
13.4.2 讀excel文件

第14章 數字信號系統
14.1 fir和iir濾波器
14.2 fir濾波器設計
14.2.1 用firwin()設計濾波器
14.2.2 用remez()設計濾波器
14.2.3 濾波器的級聯
14.3 iir濾波器設計
14.3.1 巴特沃斯低通濾波器
14.3.2 雙線性變換
14.3.3 濾波器的頻帶轉換
14.4 數字濾波器的頻率響應
14.5 二次均衡濾波器設計工具
14.6 零相位濾波器
14.7 重取樣

第15章 頻域信號處理
15.1 fft演示程序
15.1.1 fft知識復習
15.1.2 合成時域信號
15.1.3 三角波fft演示程序
15.2 觀察信號的頻譜
15.2.1 窗函數
15.2.2 頻譜平均
15.2.3 譜圖
15.3 卷積運算
15.3.1 快速卷積
15.3.2 分段運算
15.4 信號處理
15.4.1 基本框架
15.4.2 頻域濾波器
15.4.3 頻率變調處理
15.4.4 用譜圖差減法降噪
15.5 hilbert變換

第16章 用c語言提高計算效率
16.1 用ctypes調用dll庫
16.2 用weave嵌入c++程序
16.2.1 weave的工作原理
16.2.2 處理numpy數組
16.2.3 使用blitz()提速
16.2.4 擴展模塊
16.3 用cython將python編譯成c
16.3.1 編譯cython程序
16.3.2 提高計算效率
16.3.3 快速訪問numpy數組
16.4 用swig創建擴展模塊
16.4.1 swig的調用方法和實例
16.4.2 swig基礎
16.4.3 swig處理numpy數組

第17章 自適應濾波器
17.1 自適應濾波器簡介
17.1.1 系統識別
17.1.2 信號預測
17.1.3 信號均衡
17.2 nlms計算公式
17.3 用numpy實現nlms算法
17.3.1 系統辨識模擬
17.3.2 信號均衡模擬
17.3.3 卷積逆運算
17.4 用c語言加速nlms運算
17.4.1 用swig編寫擴展模塊
17.4.2 用weave嵌入c++程序

第18章 單擺和雙擺模擬
18.1 單擺模擬
18.1.1 小角度時的擺動周期
18.1.2 大角度時的擺動周期
18.2 雙擺模擬
18.2.1 公式推導
18.2.2 微分方程的數值解
18.2.3 動畫演示

第19章 分形幾何
19.1 mandelbrot集合
19.1.1 使用numpy加速計算
19.1.2 使用weave加速計算
19.1.3 連續的逃逸時間
19.1.4 mandelbrot演示程序
19.2 迭代函數系統(ifs)
19.2.1 二維仿射變換
19.2.2 迭代函數系統設計器
19.3 l-system分形
19.4 分形山脈
19.4.1 一維中點移位法
19.4.2 二維中點移位法
19.4.3 菱形方形算法

書摘/試閱

為了減少計算時間,我們不在迭代循環中計算選擇迭代方程的隨機數,而是事先通過每個迭代方程的概率,計算出選擇數組select。注意這里使用accumulate()先將概率累加,然後產生一組0到1之間的隨機數,通過判斷隨機數所在的區間來選擇不同的方程下標。也可以使用SciPy的stats模塊中的離散隨機變量來產生這個隨機下標數組。
最後通過scattero將得到的坐標點繪制成散列圖。其中:s參數是每個散列點的大小,因為我們要繪制10萬個點,為了提高繪圖速度,我們選擇點的大小為1個像素;c參數是點的顏色,這里選擇綠色;marker參數是點的形狀,';s';表示正方形,方形的繪制是最陜的:linewidths參數是點的邊框寬度,0表示沒有邊框。
此外,c參數還可以傳入一個數組,作為每個點的顏色值。我們將計算坐標的公式下標傳入,這樣可以直觀地看出點是由哪個公式迭代產生的。
......;

您曾經瀏覽過的商品

購物須知

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

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

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

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

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

優惠價:87 512
絕版無法訂購

暢銷榜

客服中心

收藏

會員專區