Julia 如何生成带有“for”的一系列绘图`

Julia 如何生成带有“for”的一系列绘图`,julia,Julia,我学习用Julia语言编程 我想测试哪种颜色更好,因此我使用以下代码: using Plots x = 1:10; y = rand(10,2); for i in [0 0.1 0.2] plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i)) end 怎么,什么也看不出来 有人能告诉我如何使用循环生成绘图吗 附言 我试过另一种方法 [plot(x,y, seriestype=:scatter,background_

我学习用
Julia
语言编程

我想测试哪种颜色更好,因此我使用以下代码:

using Plots
x = 1:10; y = rand(10,2);
for i in [0 0.1 0.2]
    plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i))
end
怎么,什么也看不出来

有人能告诉我如何使用
循环生成绘图吗

附言

我试过另一种方法

[plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i)) for i in 0:0.1:1]
上面的代码没有发生任何问题

以下代码也不起作用:

map(i->plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i)), [0 0.1 0.2])

在脚本中,除非使用
display
函数显示,否则不会显示打印(请参阅此处脚本中的打印部分)

这里有几个选项。这是最简单的:

for i in [0 0.1 0.2]
    display(plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i)))
    sleep(1)
end
它将按顺序绘制您的图形。我使用
sleep(1)
使Julia在绘图之间暂停

否则,您可以执行以下操作:

p = [plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i)) for i in 0:0.1:1]
然后将Julia REPL的数据绘制如下:

julia> p[5]
foreach(i -> savefig(p[i], "fig$i.png"), eachindex(p))
for i in [0 0.1 0.2]
    p = plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i))
    savefig(p, "fig$i.png)
end
将绘制第五个图形。现在您不必使用
显示
,因为在REPL中它将被调用,因为我没有使用
位于行的末尾。您可以编写
display(p[5])
来获得相同的效果

最后,您可以考虑将这些数字保存到PNG文件中,然后再检查它们。您可以使用上面定义的
p
数组执行此操作,如下所示:

julia> p[5]
foreach(i -> savefig(p[i], "fig$i.png"), eachindex(p))
for i in [0 0.1 0.2]
    p = plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i))
    savefig(p, "fig$i.png)
end
或者在这样的循环中:

julia> p[5]
foreach(i -> savefig(p[i], "fig$i.png"), eachindex(p))
for i in [0 0.1 0.2]
    p = plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i))
    savefig(p, "fig$i.png)
end

在脚本中,除非使用
display
函数显示,否则不会显示打印(请参阅此处脚本中的打印部分)

这里有几个选项。这是最简单的:

for i in [0 0.1 0.2]
    display(plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i)))
    sleep(1)
end
它将按顺序绘制您的图形。我使用
sleep(1)
使Julia在绘图之间暂停

否则,您可以执行以下操作:

p = [plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i)) for i in 0:0.1:1]
然后将Julia REPL的数据绘制如下:

julia> p[5]
foreach(i -> savefig(p[i], "fig$i.png"), eachindex(p))
for i in [0 0.1 0.2]
    p = plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i))
    savefig(p, "fig$i.png)
end
将绘制第五个图形。现在您不必使用
显示
,因为在REPL中它将被调用,因为我没有使用
位于行的末尾。您可以编写
display(p[5])
来获得相同的效果

最后,您可以考虑将这些数字保存到PNG文件中,然后再检查它们。您可以使用上面定义的
p
数组执行此操作,如下所示:

julia> p[5]
foreach(i -> savefig(p[i], "fig$i.png"), eachindex(p))
for i in [0 0.1 0.2]
    p = plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i))
    savefig(p, "fig$i.png)
end
或者在这样的循环中:

julia> p[5]
foreach(i -> savefig(p[i], "fig$i.png"), eachindex(p))
for i in [0 0.1 0.2]
    p = plot(x,y, seriestype=:scatter,background_color=RGB(0.4,0.8,i))
    savefig(p, "fig$i.png)
end

谢谢你的详细解释。我理解了Mathematica和Julia之间的区别。谢谢你的详细解释。我知道Mathematica和Julia之间的区别。