Julia 将绘图存储在数组中

Julia 将绘图存储在数组中,julia,plots.jl,Julia,Plots.jl,我试图在子图中绘制数据帧不同列的直方图 plt_count = 1 for i = names(abalone)[2:end] p[plt_count]=histogram(abalone[:,i]) plt_count += 1 end plot(p, layout=(3,3), legend=false) 这就是我试过的。但是我无法为数组p提供正确的定义。我如何定义p 对代码的改进也会有所帮助。如果您不关心类型的稳定性,您可以制作任何类型的数组 ps = Array{Any

我试图在子图中绘制数据帧不同列的直方图

plt_count = 1
for i = names(abalone)[2:end]
    p[plt_count]=histogram(abalone[:,i])
    plt_count += 1
end
plot(p, layout=(3,3), legend=false)
这就是我试过的。但是我无法为数组
p
提供正确的定义。我如何定义p


对代码的改进也会有所帮助。

如果您不关心类型的稳定性,您可以制作任何类型的数组

ps = Array{Any}(nothing, 3)
ps[1] = plot([2,3,4])
ps[2] = plot([1,5])
ps[3] = plot([10,5,1,0])

@show typeof(ps)
plot(ps..., layout=(3,1))
如果您想创建一个特定类型的
Plot
数组,一种方法是使用虚拟Plot初始化数组,然后稍后替换

ps = repeat([plot(1)], 3)
ps[1] = plot([2,3,4])
ps[2] = plot([1,5])
ps[3] = plot([10,5,1,0])

@show typeof(ps)
plot(ps..., layout=(3,1))

你使用什么绘图软件包?我正在使用Plots.jl中的
绘图软件包
你可以简单地写
直方图(矩阵(鲍鱼[:,2:end]),布局=(3,3),图例=假)
或者如果你的内存效率更高一点
直方图(矩阵(@view鲍鱼[:,2:end]),布局=(3,3),图例=假)
。好的。可以谢谢