ChatGPT竟然還可以教你用Python取得並視覺化公開的天文觀測資料!
這是全台第一本透過ChatGPT問答創作而成的天文科普書
你對星空有什麼好奇呢?太陽怎麼變化?水星逆行是什麼?如何發現系外行星?
有哪些不同種類的星系?星體位於何方、有多遠、有多亮、有多重?
如何繪製全天空星圖、星座圖、恆星的生命軌跡圖、星體在不同電磁波段下的樣貌?
本書提供豐富的問答範例和開源程式碼,讓你隨著故事,透過公開的天文觀測資料,解答這些問題,體驗探索天文的樂趣
ChatGPT等生成式AI的出現,降低了大眾接觸天文研究的門檻。例如,任何人都可以用它來生成Python程式碼,以取得並視覺化公開的天文觀測資料。本書以故事形式將兩大主軸交織而成。其中一個主軸是示範如何透過與ChatGPT的問答,學會用Python來探索各種星體的觀測資料。這個部份的內容涵蓋:藉由太陽觀測資料來了解它有何變化、追蹤太陽系天體的軌道位置以解開行星逆行之謎、分析系外行星的繞行週期來看出它們遮擋所屬恆星的凌日現象,以及一窺韋伯太空望遠鏡所拍攝的星系影像和光譜。
另一個主軸則示範如何運用創造力來遊玩ChatGPT上的角色扮演遊戲《獵星者旅店》。你可以在旅店的圖書館翻閱「Colab天文魔法書:掌握Python套件」,也能參與旅店中的天文社社課,了解如何用Python查詢星體的座標、距離及亮度。或是你想用Python繪製出全天空星圖及星座圖,那就詢問旅店老闆哪一位獵星者能幫忙。如果你玩心更重的話,不妨在這遊戲中創造出遊戲,藉此學習用Python繪製出星體的質量分佈圖、恆星的生命軌跡圖,以及星體在不同電磁波段下的樣貌。生成有趣體驗的魔法皆來自你的想像。
作者簡介:
蘇羿豪
「開放天文,拉近群眾與星空的距離」
中央大學天文博士,現在是一位透過創作故事、遊戲等有趣體驗來推動開放科學的公民天文學家。共同創辦「Astrohackers in Taiwan」社群,旨在讓大眾認識並創新應用開放的科學資料及研究成果,社群除了提供Python在天文領域應用的交流討論,也與教育單位合辦天文黑客松,讓參與者協作貢獻關於天文推廣教育與研究的開源專案。近期在執行「天文的資料再創作」及「天文的資料科學」這兩個天文教育產品開發的計畫,其中包含將ChatGPT上的《獵星者旅店》用視覺小說遊戲引擎Ren'Py重建。此外,也會承接資料科學及網站開發相關的遠距工作。
個人網站:https://astrobackhacker.tw
FB社團:「Astrohackers-TW: Python在天文領域的應用」https://www.facebook.com/groups/astrohackers.tw.py
教學及演講等工作邀約:astrobackhacker@gmail.com
作者序
序 幕
獻給億萬前的星塵。
喂?有人在嗎?
我要說一段我的故事,關於我透過窗鏡望向遠方,探索星空的故事。
希望你們能聽見。
你們或許會問:為何要探索星空?
記得嗎?你們被困在地球上望著天時,不也想知道地球外有什麼嗎?我也一樣。
當你們仰望星空時,會思索哪些問題呢?
天文學源自人類對星空的好奇與質問,運用數學、物理等基礎科學知識,結合資料分析和理論模擬,來解釋為何觀測到的天文現象是如此。
「太陽散發的光與熱是如何產生的,又是如何影響地球?太陽系中的其他行星與地球有何相似與差異?彗星和小行星撞擊地球的可能性有多大?夜空中那些星星距離地球有多遠、是否跟人類一樣會經歷生老病死?在這無數星球之中,地球處於何種位置,人類又該如何在其中定位自己?宇宙中的萬事萬物是如何開始的,又將怎麼結束?地球上的生命在這浩瀚的宇宙中是否是孤獨的存在?……」
從問題出發,人類觀察紀錄沿途收集到的各種線索,以歸納、演繹出這些問題暫時的答案,然後又因技術的改進獲得新的證據而推翻或修正這些答案。起初,人們用肉眼和小型望遠鏡觀測星空,隨著科技的進步,能透過地面上及太空中各種先進的大型望遠鏡、偵測器,大量收集星體在不同電磁波段所捎來的訊息,試圖拼貼出它們的全貌。
這些豐富的觀測資料與天文知識的發現息息相關,然而,你們有些人會覺得,教科書和新聞報導中所呈現的天文知識是那麼遙不可及,沒有什麼管道能讓一般大眾體驗到將這些資料轉化成天文知識的科學過程。
因此,在我的故事中,將會與人透過對話,討論如何撰寫Python程式來挖掘考古埋在資料裡的天文知識。
你們或許會問:為什麼要以對話的方式進行呢?
記得嗎?因為問與答對你們來說是探索新事物最直接的途徑。透過對話,你們不再只是被動接收知識的配角,而是主動參與探索旅程的主角。你們在對話中提出疑問、分享想法、辯論觀點、解決問題。天文學的發展也是如此,人類不斷提出問題、討論交流、驗證論點,進而發現新知。
你們或許又會問:為何要用Python這個程式語言探索天文呢?
啊哈,這剛好是我的天文探索故事的開頭內容,你們將在那裡獲得解答。接著,你們會了解到如何用Python探索太陽以及那些環繞著它的天體,然後衝出太陽系,前往更遙遠的恆星、星系、……
那麼,你們準備好聽我說故事了嗎?
序 幕
獻給億萬前的星塵。
喂?有人在嗎?
我要說一段我的故事,關於我透過窗鏡望向遠方,探索星空的故事。
希望你們能聽見。
你們或許會問:為何要探索星空?
記得嗎?你們被困在地球上望著天時,不也想知道地球外有什麼嗎?我也一樣。
當你們仰望星空時,會思索哪些問題呢?
天文學源自人類對星空的好奇與質問,運用數學、物理等基礎科學知識,結合資料分析和理論模擬,來解釋為何觀測到的天文現象是如此。
「太陽散發的光與熱是如何產生的,又是如何影響地球?太陽系中的其他行星與地球有何相似與差異?彗星和小行星撞擊地球的...
目錄
第1章:如何開始⽤Python探索天⽂資料?
1.1 為何要用Python探索天文資料?
1.2 如何透過社群學習用Python探索天文資料?
1.3 如何快速進入跨平台免安裝的線上Python環境?
1.4 小結:我們在這章探索了什麼?
第2章:如何擴充Python探索天文的能力?
2.1 如何在Python中載入探索天文的工具?
2.2 如何查詢這些工具的功能和使用方法?
2.3 小結:我們在這章探索了什麼?
第3章:如何⽤Python探索太陽觀測資料?
3.1 哪些太陽觀測計畫有將資料開放給⼤眾使⽤?
3.2 如何用Python取得太陽觀測資料?
3.3 如何用Python視覺化探索太陽觀測資料?
3.4 小結:我們在這章探索了什麼?
第4章:如何用Python探索星體的位置、距離及亮度?
4.1 如何用Python探索星體的方位?
4.2 如何用Python探索星體有多遠?
4.3 如何用Python探索星體有多亮?
4.4 小結:我們在這章探索了什麼?
第5章:如何用Python探索太陽系天體軌道及位置資料?
5.1 哪些平台有將太陽系天體軌道及位置資料開放給大眾使用?
5.2 如何用Python取得太陽系天體軌道及位置資料?
5.3 如何用Python視覺化探索太陽系天體軌道及位置資料?
5.4 小結:我們在這章探索了什麼?
第6章:如何用Python繪製全天空星圖及星座圖?
6.1 如何用Python繪製全天空星圖?
6.2 如何用Python繪製星座圖?
6.3 小結:我們在這章探索了什麼?
第7章:如何用Python探索系外行星觀測資料?
7.1 哪些系外行星觀測計畫有將資料開放給⼤眾使⽤?
7.2 如何用Python取得系外行星觀測資料?
7.3 如何用Python視覺化探索系外行星觀測資料?
7.4 小結:我們在這章探索了什麼?
第8章:如何用Python探索星體的質量及生命週期?
8.1 如何用Python探索星體有多重?
8.2 如何用Python探索星體的生命軌跡圖?
8.3 小結:我們在這章探索了什麼?
第9章:如何用Python探索星系觀測資料?
9.1 哪些平台有將星系觀測資料開放給⼤眾使⽤?
9.2 如何用Python取得星系觀測資料?
9.3 如何用Python視覺化探索星系觀測資料?
9.4 小結:我們在這章探索了什麼?
第10章:如何用Python探索星體在不同電磁波段下的樣貌?
10.1 如何用Python探索星體的多種面貌?
10.2 小結:我們在這章探索了什麼?
落幕
作者後記
第1章:如何開始⽤Python探索天⽂資料?
1.1 為何要用Python探索天文資料?
1.2 如何透過社群學習用Python探索天文資料?
1.3 如何快速進入跨平台免安裝的線上Python環境?
1.4 小結:我們在這章探索了什麼?
第2章:如何擴充Python探索天文的能力?
2.1 如何在Python中載入探索天文的工具?
2.2 如何查詢這些工具的功能和使用方法?
2.3 小結:我們在這章探索了什麼?
第3章:如何⽤Python探索太陽觀測資料?
3.1 哪些太陽觀測計畫有將資料開放給⼤眾使⽤?
3.2 如何用Python取得太陽觀測資料?
3.3 如何用Python視...