Graph 在Julia中使用Gadfly.jl包时如何在图形中添加图例

Graph 在Julia中使用Gadfly.jl包时如何在图形中添加图例,graph,charts,legend,julia,gadfly,Graph,Charts,Legend,Julia,Gadfly,我正在使用Julia进行财务数据处理,然后根据财务数据绘制图表 在图形的X轴上,我绘制日期(每天价格) 在Y轴上,我绘制股票价格,移动平均值13和移动平均值21 我目前正在使用DataFrames来绘制数据 代码- 我得到了正确的图形,但我无法在显示的图形中添加图例 蓝线代表接近的价格 红线代表移动平均线13 绿线代表移动平均线21 我们如何在图表中添加图例 我从中的评论中了解到,目前无法获得图层列表的图例 Gadfly基于Hadley Wickhams的ggplot2 for R,因此通常的模

我正在使用Julia进行财务数据处理,然后根据财务数据绘制图表

在图形的X轴上,我绘制日期(每天价格) 在Y轴上,我绘制股票价格,移动平均值13和移动平均值21

我目前正在使用DataFrames来绘制数据

代码-

我得到了正确的图形,但我无法在显示的图形中添加图例 蓝线代表接近的价格 红线代表移动平均线13 绿线代表移动平均线21


我们如何在图表中添加图例

我从中的评论中了解到,目前无法获得图层列表的图例

Gadfly基于Hadley Wickhams的ggplot2 for R,因此通常的模式是将数据排列到一个带有离散列的数据框中,以便进行标记。在您的情况下,此方法如下所示:

x=1:10
df1=数据帧(x=x,y=2x,label=“double”)
df2=数据帧(x=x,y=x.^2,label=“square”)
df3=数据帧(x=x,y=1./x,label=“inverse”)
df=vcat(df1、df2、df3)
p=绘图(df,x=“x”,y=“y”,color=“label”,几何线,
比例。离散颜色(手册(“蓝色”、“红色”、“绿色”))
绘图(PNG(“stock.PNG”,6英寸,3英寸),p)

现在您可以尝试使用。 此处只需对代码进行更改:

p=绘图(df、l1、l2、l3、,
Guide.ylabel(“某些文本”),
指南标题(“我的标题”),
指南。手动颜色键(“图例”、[“我是蓝色l1”、“我是红色l2”、“我是绿色l3”]、[“蓝色”、“红色”、“绿色”]))

尼科,非常感谢,我被困在这里太久了。现在我可以继续我的项目了。如果我正在绘制这样的函数:plot([sin,cos],0,5)?绘图上的函数标记为“f1”和“f2”,我想对此进行更改。@user697683这值得提出一个新问题。我认为
Guide.manual\u color\u key
允许您对图例执行几乎任何您想要的操作,并且可以在将图层列表输入到
plot
时使用它。编辑:刚刚看到你答案上的日期。此功能在2014年2月不可用:-)发布此问题时,此功能不可用,但现在可通过
Guide.manual\u color\u key
使用此功能。有关更多详细信息,请参阅。
df=DataFrame(x=dates,y1=pricesClose,y2=m13,y3=m21)
l1=layer(x="x",y="y1",Geom.line,Theme(default_color=color("blue")));
l2=layer(x="x",y="y2",Geom.line,Theme(default_color=color("red")));
l3=layer(x="x",y="y3",Geom.line,Theme(default_color=color("green")));
p=plot(df,l1,l2,l3);
draw(PNG("stock.png",6inch,3inch),p)