在嵌套while循环中使用matplotlib的多个图

时间:2012-04-20 11:17:49

标签: python matplotlib nested-loops

我正在制作一个控制LCR仪表的程序(细节并不重要)。因此,我需要两个嵌套的while循环(简单示例):

while x <= stopFrequency:
    y = startVoltage
    while y <= stopVoltage:
        getCapacity = y * 2
        y += stepValueVoltage 
    x += stepValueFrequency 

现在我需要为ygetCapacity的不同频率(外环)制作一个图。我可以为一个频率获得ygetCapacity的情节。但是对于更多,我不知道如何在一个图上得到图表。

1 个答案:

答案 0 :(得分:3)

要在同一轴上放置多个图(“图”)(“图”),只需为每个图调用plt.plot一次。

import matplotlib.pyplot as plt
import itertools
markers = itertools.cycle([ '+', '*', ',', 'o', '.', '1', 'p', ])
while x <= stopFrequency:
    y = startVoltage
    ys = []
    vals = []
    while y <= stopVoltage:
        ys.append(y)
        vals.append(getCapacity)
        getCapacity = y * 2
        y += stepValueVoltage
    plt.plot(ys, vals, 
             label = 'x: {0}'.format(x),
             marker = next(markers))
    x += stepValueFrequency
plt.legend(loc = 'best')
plt.show()