• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

Python 使用 yt 模組分析、顯示三維立體資料教學與範例

介紹如何使用 Python 的 yt 模組,分析與顯示三維立體資料,並繪製立體渲染圖形。


yt 是一套 Python 的三維立體資料分析與顯示模組,主要用於物理與工程相關領域,以下是簡單的安裝使用範例,詳細的操作說明可參考 yt 的官方網站。

安裝 yt

yt 可以直接透過 pip 來安裝:

pip3 install yt

通常大型的三維立體資料都會以 HDF5 格式來儲存,所以也會需要使用到 h5py 模組,建議一起安裝:

pip3 install h5py

若要顯示互動式的三維立體圖形,還會需要 cyglfw3 與 PyOpenGL 兩個 Python 模組,若在 Ubuntu Linux 中則會需要先安裝好 libglfw3-dev 系統套件之後,才能安裝 cyglfw3 這個 Python 模組:

sudo apt install libglfw3-dev
pip3 install cyglfw3 PyOpenGL

範例資料

這裡使用到的範例資料可以從 yt 的官方網站下載:

  • IsolatedGalaxy.tar.gz
  • Enzo_64.tar.gz
  • enzo_tiny_cosmology.tar.gz

投影圖

這是一個簡單的投影圖(projection plot)範例。

import yt

# 載入資料集
ds = yt.load("IsolatedGalaxy/galaxy0030/galaxy0030")

# 建立投影圖
p = yt.ProjectionPlot(ds, "z", "density", width = (100, 'kpc'))

# 設定 color map 為 dusk
p.set_cmap(field = "density", cmap = 'dusk')

# 儲存為圖檔
p.save('projection.png')
投影圖
投影圖

立體渲染圖

這是一個簡單的立體渲染圖(volume rendering)範例,輸出圖檔的時候,搭配 sigma_clip 增強影像的對比。

import yt

# 載入資料集
ds = yt.load("enzo_tiny_cosmology/RD0009/RD0009")

# 建立立體渲染圖
sc = yt.create_scene(ds, field=('gas', 'density'))
sc.render()

# 儲存為圖檔
sc.save('volume.png', sigma_clip=2)
立體渲染圖
立體渲染圖

關於立體渲染圖的繪製,可以參考 yt 官方說明文件。

分類:Python

讀者互動

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Primary Sidebar

搜尋

分類

Android Apple C/C++ Excel Linux OneNote PHP PowerPoint PowerShell Python R Windows Word 免費工具 創客 網站架設 線上工具 資料庫 遊戲 雜七雜八

近期文章

  • ITK 以 LabelStatisticsImageFilter 套用遮罩影像計算統計量教學與範例
  • iCloud 匯入 Google 聯絡人教學
  • CSS 檔案最小化與壓縮處理教學與範例
  • Python 使用 ITK 讀取、寫入、建立影像教學與範例
  • Python 以 random 模組產生隨機亂數教學與範例
  • iPhone 手機開啟 VoLTE 與 WiFi 通話 VoWiFi 功能教學
  • Python 以 NumPy 的 unique 函數篩選陣列不重複元素教學與範例
  • ITK 計算 3D 二元遮罩影像物件數量與體積

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

Copyright © 2020 · Office Guide