2

我想在 iJuia 笔记本中按顺序显示 PyPlot 图形和相关文本。

using PyPlot
for i=1:10
    println(i)  #Relevant text info
    fig = figure(figsize=(4,1))
    plot(1:10,rand(10));title(i)
end

这会将数字一起返回,放置在文本输出的不同阶段。即类似的东西: 1 2 3 4 5 6 [fig 1] ... [fig 10] 7 8 9 10

或者,我尝试过使用display(fig)

using PyPlot
for i=1:10
    println(i)  #Relevant text info
    fig = figure(figsize=(4,1))
    plot(1:10,rand(10))
    title(i)

    display(fig)
end

但这会返回[fig 1] 1 [fig 2] 2 [fig 3] 3 [fig 4] 4 .... [fig 9] 9 [fig 10] [fig 1] ... [fig 10] 10 (最后将所有数字复制在一起)

有没有办法display(fig)按顺序使用而不重复?

4

1 回答 1

2

我找到了解决方案。也许不是最强大或最通用的,但它似乎使事情井井有条。用于display()显示相关文本可保持文本和图形顺序正确,并close(fig)防止display(fig)显示重复的图形。

using PyPlot
for i=1:10
    display(i)  #Relevant text info

    fig = figure(figsize=(4,1))
    plot(1:10,rand(10))
    title(i)

    display(fig)
    close(fig)
end

结果:1 [图 1] 2 [图 2] ... 10 [图 10]

于 2016-07-20T23:08:30.527 回答