【发布时间】:2019-08-19 12:00:38
【问题描述】:
我想绘制一个不同宽度的螺旋线。然而,当我绘制该图时,在线上方和下方出现了一些特殊的点(下图中红色箭头指向的位置)。它们似乎发生在点之间,线应该是直的。它们也不会以任何明显的模式出现。
我已经运行了以下代码,但我不知道是什么导致了这些奇怪的失真。有什么想法吗?
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.use('Agg')
plt.ioff()
MY_DPI = 300
BKGD_COLOUR = 'w'
FILL_COLOUR= 'k'
a = 0
b = 0.5
maxRadius = 100
maxTheta = (maxRadius - a) / b
t = np.arange(0, maxTheta, 0.1)
r = a + b *t
fig = plt.figure(figsize=(10,10), dpi=MY_DPI)
ax = fig.add_axes([0,0,1,1], polar=True)
ax.set_rlim(0, maxRadius)
ax.axis('off')
r_bot = np.array(r) - np.random.uniform(0.1, 0.5, len(r))
r_top = np.array(r) + np.random.uniform(0.1, 0.5, len(r))
ax.fill_between(t, r_bot, r_top, color=FILL_COLOUR, lw=0)
plt.savefig('spiraliser.jpg', facecolor=BKGD_COLOUR, bbox_inches='tight', dpi=MY_DPI)
plt.close()
【问题讨论】:
-
看起来像是 jpg 压缩神器。尝试使用 png 看看它是否仍然存在。
-
@James 我尝试另存为 png,但问题仍然存在。不过谢谢。
标签: python matplotlib graph polar-coordinates spiral