首页 > 解决方案 > 使用 for 循环创建 matplotlib 图

问题描述

我有一个清单:

('Amazon': 'AAZ'), ('Apple' : 'AAPL')...大约 34 行。

我也有一个 numpy 数组,

公司 :Amazon --> Change : -380.2393913269043

公司 :American Express --> Change : 17.102252960205078

公司 :Boeing --> Change : 34.740291595458984

大约是 34 x 3524

我的目的是为所有 34 家公司绘制图表,使用他们的名字“亚马逊”和他们的价格“变化”在一个 7 行、2 列的网格上

我试过这段代码:

For i in range(0, len(companies)):
    plt.figure(figsize = (12,12))
    ax = plt.subplot(7,2,i)
    plt.plot(movements[i][:])
    plt.title(companies[i])
    plt.show()

我的输出要么不打印,当我把“i”放在 subplot 命令上时,或者当我输入任何数字时打印在一个单独的列中。

如何解决这个问题呢?

我想要的输出是这样的: 所需的 matplotlib 输出

标签: matplotlib

解决方案


尝试这个

plt.figure(figsize = (12,12))

graphs = 1

for i in range(0, len(companies)): 
    plt.subplot(310+graphs) 
    plt.plot(movements[i][:])
    plt.title(companies[i])
    graphs  += 1

plt.show()

推荐阅读