這個代碼主要是我同門寫的,我在這里整理一下。
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()