首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Plots.jl:循环的内部情节

Plots.jl:循环的内部情节
EN

Stack Overflow用户
提问于 2017-09-10 13:19:40
回答 1查看 268关注 0票数 0

我使用的是Plots.jl和GR后端。

不管怎么说,我似乎无法策划!在for-循环中:

代码语言:javascript
复制
using Plots
fn(m,x) = m*x
plot([0, 10], [fn(1, 0), fn(1, 10)])
for m in 2:4
    plot!([0, 10], [fn(m, 0), fn(m, 10)])
end

奇怪的是,在不使用循环的情况下,同样的事情是有效的:

代码语言:javascript
复制
using Plots
fn(m,x) = m*x
plot([0, 10], [fn(1, 0), fn(1, 10)])
plot!([0, 10], [fn(2, 0), fn(2, 10)])
plot!([0, 10], [fn(3, 0), fn(3, 10)])
plot!([0, 10], [fn(4, 0), fn(4, 10)])

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-10 17:35:42

这是因为绘图本身发生在将Plot对象返回到控制台时,控制台将隐式调用Base.display函数。display对象上的Plot方法生成您看到的绘图。在for循环中生成的对象不会自动返回到控制台,这意味着您看不到情节;但是可以通过显式调用display来显示它们

代码语言:javascript
复制
using Plots
fn(m,x) = m*x
plot([0, 10], [fn(1, 0), fn(1, 10)])
for m in 2:4
     display(plot!([0, 10], [fn(m, 0), fn(m, 10)]))
end

代码语言:javascript
复制
p = plot([0, 10], [fn(1, 0), fn(1, 10)])
for m in 2:4
     plot!(p, [0, 10], [fn(m, 0), fn(m, 10)])
end
p
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46141141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档