1. 程式人生 > 實用技巧 >python中畫極座標圖——以GNSS衛星空天圖為例

python中畫極座標圖——以GNSS衛星空天圖為例

這個程式碼主要是我同門寫的,我在這裡整理一下。

import math
import matplotlib.pyplot as plt

ax = plt.subplot(111, projection='polar')  # projection='polar'-->設為極座標

ax.set_theta_direction(-1)                 #設定極座標方向:-1->順時針;1->逆時針

ax.set_theta_zero_location('N')            #設定極角初始值位置(預設是東-->右側)
ax.yaxis.set_label_position('
right') ax.tick_params('y', labelleft=False) #不顯示極徑刻度值 ax.grid(linestyle = '--') #設定線型 labels = ['N', '45°', 'E', '135°', 'S', '225°', 'W', '315°'] ax.set_thetagrids(range(0, 360, 45), labels, fontweight='semibold') #設定極角顯示的刻度值
# SATAZ:衛星的方位角, SATEL:衛星的高度角 c = ax.scatter(SATAZ,SATEL, marker="
.",alpha=0.75) #用來畫散點圖,marker-->控制點的形狀, alpha-->控制透明度(0-1) SATAZ = [0,0,0,0,0,0] #衛星的空天圖和極徑方向正好相反,所以刻度值是自己畫的 SATEL = [0,15,30,45,60,75] SATID = ['90', '75', '60', '45', '30', '15'] for i in range(0, 6): ax.text(SATAZ[i], SATEL[i], SATID[i]) #畫極徑刻度值(方法有點low)
ax.set_rticks(range(0, 105, 15)) #極座標標籤顯示範圍 plt.show()