绘制两个"俚语图形"在牛fly中的层次

时间:2014-05-22 16:22:14

标签: julia gadfly

我想要将两个图层绘制为Geom.point。从Gadfly documentation开始,我相信这应该是可能的,尽管该示例仅涵盖了Geom类型层不同的情况。但是,当我尝试这个时(Julia 0.3.0-prerelease + 2584,Gadfly v0.2.8)它会抛出一个错误:

x = [83, 71, 79, 71, 73, 66, 78, 70, 69, 84, 59, 66, 73]
y = [59, 47, 33, 68, 56, 61, 51, 45, 50, 44, 60, 62, 50]
ox = 74
oy = 49

plot(layer(x=x, y=y, Geom.point),
layer(x=ox, y=oy, Geom.point))

# BoundsError()
#  in eval_plot_mapping at /Users/peter/.julia/v0.3/Gadfly/src/Gadfly.jl:317
#  in render at /Users/peter/.julia/v0.3/Gadfly/src/Gadfly.jl:448
#  in writemime at /Users/peter/.julia/v0.3/Gadfly/src/Gadfly.jl:753
#  in sprint at io.jl:460
#  in display_dict at /Users/peter/.julia/v0.3/IJulia/src/execute_request.jl:35

最终,我还想手动指定图层的美感(例如Geom.point(color="red")

我是否遗漏了关于图形俚语的内容,或者俚语中不支持两种相同类型的Geom图层?如果是,那我怎样才能为每一层设置不同的美学?

1 个答案:

答案 0 :(得分:4)

Gadfly希望x和y是向量,因此绘制标量将不起作用。

除了为每个图层提供单独的字符串以获得不同的颜色外,您还可以使用Theme手动更改颜色,例如:Theme(default_color=color("red"))