0

我无法创建我需要的具有多个折线图的图。

我想要的是一种将这些图表中的每一个绘制在另一个之上的方法(比如一个有 y=5 的基线,我希望下一个有 y=10 的基线)并且这些图表中的每一个都必须阻止它上面的一个。

所以这将不可避免地看起来像 Joy Divisions Unknown Pleasures 的封面:http: //cococubed.asu.edu/images/unknown_pleasures/unknown_pleasures.jpg

除了倒色,我还想要一个使用 python 或 numpy 或 matplotlib 的答案。

4

1 回答 1

3

这是一种方法。关键是使用 fill_between 函数并将每条绘制的线偏移一些边距(i*2在这种情况下)。此外,绘图必须从顶部开始,因此 arange 切片中的 [::-1] 。

t=linspace(-2*pi, 2*pi, 1000)
for i in arange(1, pi, 0.01)[::-1]:
    left = exp(-(t + (i - 1) * 2*pi)**2) * cos(t * i)**2 - 1
    right = exp(-(t - (i - 1) * 2*pi)**2) * cos(t * i)**2 - 1 
    vertical_offset = i*2
    fill_between(t, vertical_offset + left + right, facecolor='white')

于 2013-07-16T09:05:08.987 回答