这是我第一次使用matplotlib绘制极轴图,并希望在此提供一些指导。我目前正在尝试在theta1(105度)处绘制一条线,但无法在极轴图上看到任何打印的数据。我获得的图像如下所示:

python - 极轴不显示数据(matplotlib)-LMLPHP

我的脚本是:

import matplotlib as mpl
mpl.use('Agg')
import numpy as np
import matplotlib.pyplot as plt


fig1 = plt.figure()
ax1 = fig1.add_axes([0,0,1,1],polar=True)
theta1 = 105.968
print ("theta1= %s" %theta1)
R1 = 1

ax1.plot(theta1, R1, lw=2.5)

plt.savefig('plot.png')


谁能告诉我我做错了什么?当我使用ax1.plot(theta1, R1, lw=2.5)时,我期望一条直线会出现在大约106度处,该线延伸为1.0,线宽为2.5。我还尝试过将线宽加倍。

最佳答案

这里有两个问题:


首先与极地图无关。为plot的前两个参数提供单个值将创建一个点,而不是一条线。您需要设置一些标记marker="o"才能看到这一点。

一条线至少需要两个点才能显示为一条线。

ax.plot([x1,x2],[y1,y2])

其次,需要以辐射角给出角度。

theta = np.deg2rad([105,105])
R = [0,1]
ax.plot(theta, R, lw=2.5)



python - 极轴不显示数据(matplotlib)-LMLPHP

关于python - 极轴不显示数据(matplotlib),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48812041/

10-10 17:30