如何让我的函数将关键字变量传递给Plots的下划线函数

时间:2019-04-05 23:36:07

标签: julia

当我获得实验结果时,我希望绘制散点图。所以我想创建一个函数来简化它

OR

现在如何修改函数myplot,以便可以将任何关键字参数传递给下划线的图函数。我指的是关键字参数,例如title =“ my实验结果”

2 个答案:

答案 0 :(得分:0)

您可以在外部函数中提供kwarg,并从内部函数中调用相同的变量,如下所示。

using Plots

# result is an array of tuples (time,velocity)
experimental_result = [(1,2),(2,3),(3,5),(4,3)]


function myplot(arrayoftuple;kwargs...)
    len = length(arrayoftuple)
    x = [ arrayoftuple[k][1] for k in 1:len ]
    y = [ arrayoftuple[k][2] for k in 1:len ]
    plot(x,y;kwargs...)
end

myplot(experimental_result;[(:xlabel,"x"),(:title ,"my experimental result")]...)

enter image description here

答案 1 :(得分:0)

使用Plots,正确的答案是编写recipe,请参阅https://docs.juliaplots.org/latest/recipes/。关键字由配方自动传递。 但是,我很难说出哪种配方最适合您的威力,因为plot(experimental_results)已经可以使用。如果您将示例更新为更接近实际的示例,那么我可以向您展示如何编写示例。