Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Are Gadfly plots currently composable?

Is there currently a way to add plot elements together in Gadfly.jl?

For example, in R if I have another function that returns a ggplot and I want to add a title to it, I'd do the following:

p <- makeMyPlot()
p + ggtitle("Now it has a title")

Is there currently a Gadfly equivalent? If not, is this on Gadfly's roadmap?

like image 906
Ben Hamner Avatar asked May 10 '14 19:05

Ben Hamner


1 Answers

There is add_plot_element(), which can add stuff to an existing layer:

xs = [0:0.1:pi]
l = layer(x=xs, y=sin(xs))
add_plot_element(l, Guide.title("Now it has a title"))

You can then plot the layer using plot(l), and invoke either draw or display to actually show something. Further down, there's a bunch of overloads that work on a Plot directly:

p = plot(x=xs, y=sin(xs))
add_plot_element(p, Guide.title("Now it has a title"))
display(p)

I can't find either of these functions in the documentation, but fortunately the source is comprehensible enough. One of the many joys of Julia =)

like image 130
Tomas Aschan Avatar answered Nov 10 '22 07:11

Tomas Aschan