假设我有一个功能
myfunc(a, x::Int64) = a * x
Run Code Online (Sandbox Code Playgroud)
我想仅对第二个参数进行矢量化,以便我有类似的东西
myfunc{N}(a, x::Array{Int64, N}) = map(x -> myfunc(a, x), x)
Run Code Online (Sandbox Code Playgroud)
我知道有宏@ vectorize_1arg或@ vectorize_2arg.但是,这些宏将向量化所有参数.
问题:如何方便地对特定参数的函数进行矢量化?我必须像上面的例子一样硬编码吗?
假设我定义一个这样的类型
type Point{Tx, Ty} end
Run Code Online (Sandbox Code Playgroud)
然后,我创建这种类型的变量,例如,
a = Point{Int64, :something}()
Run Code Online (Sandbox Code Playgroud)
现在,我只知道可以得到aby 的类型typeof(a)。即Point{Int64, :something}。但是,我需要的只是参数Tx和Ty。
有没有什么方法,我可以得到这些参数Tx和Ty?
using Gadfly
myplot = plot(x = 1:10, y = 2:11, Geom.line)
draw(PNG("myplot.png", 3inch, 3inch), myplot)
Run Code Online (Sandbox Code Playgroud)
我只想制作一个png文件而不在浏览器中显示任何内容。(为什么?例如,我在远程服务器上工作。)如何停止该功能plot的显示图?