以下python代码应在[-pi / 2,pi / 2]范围内绘制r(theta)= theta。
B
这会产生情节:
但是,我希望它能产生:
r(theta)的负值似乎被削减了。我如何使matplotlib绘制r(theta)的负值?
答案 0 :(得分:1)
第一张图似乎是正确的。它只是没有显示负值。这可以通过明确设置r轴的极限来克服。
r
此行为基于以下假设:任何数量都应绘制在极坐标图上,这可能有利于相对数量的技术问题。例如。人们可能会问周期系统中的数量与其平均值的偏差。在这种情况下,matplotlib使用的约定非常适合。
从更加数学(理论)的角度来看,人们可能会认为负半径是原点的一个点反映。为了复制此行为,需要将负import matplotlib.pyplot as plt
import numpy as np
theta = np.linspace(-np.pi / 2, np.pi / 2, 64 + 1)
r = theta
plt.polar(theta+(r<0)*np.pi, np.abs(r))
plt.show()
值的点旋转π。因此,可以通过以下代码再现来自问题的预期图表
.ssh/config