0

使用python,我想针对方位角(度数)绘制一系列时间(例如秒),以便方位角显示在顶部的圆周(北/0度/360度)周围,时间从中心测量到圆周。我已经包含了我的目标的草图。

我的数据存储为 numpy 数组。例如以下(与图大致对应):

time = np.array([4 ,5 ,6, 7, 10])
print(time)
[ 4 5 6 7 10]

azi = np.array([70 ,100 ,120, 150, 170])
print(azi)
[ 70 100 120 150 170]

p

4

1 回答 1

1

要绘制圆形,请使用极坐标图。角度应转换为弧度。使用set_theta_zero_location,可以移动起点(默认在右侧)。set_theta_direction(-1)使角度顺时针旋转。

import numpy as np
import matplotlib.pyplot as plt

time = np.array([4 ,5 ,6, 7, 10])
azi = np.array([70 ,100 ,120, 150, 170])

ax = plt.subplot(111, projection='polar')
ax.plot(azi*np.pi/180, time, color='black', marker='D', markerfacecolor='limegreen')
ax.set_theta_zero_location('N')
ax.set_theta_direction(-1) # clockwise
ax.grid(True)

# ax.set_ylabel('Time', color='crimson')
ax.tick_params(axis='y', colors='crimson')

plt.show()

结果图

于 2020-03-31T18:39:32.680 回答