如何将颜色匹配的图例添加到R matplot

我使用matplot在图表上绘制了几行:

matplot(cumsum(as.data.frame(daily.pnl)),type="l")

这给了我每行的默认颜色 – 这很好,

但我现在想要添加一个反映相同颜色的图例 – 我怎样才能实现这一目标?

请注意 – 我试图不首先指定matplot的颜色.

legend(0,0,legend=spot.names,lty=1)

给我所有相同的颜色.

matplot的默认颜色参数是data.frame列的nbr上的序列.所以你可以像这样添加图例:

nn <- ncol(daily.pnl)
legend("top", colnames(daily.pnl),col=seq_len(nn),cex=0.8,fill=seq_len(nn))

以汽车数据集为例,这里是添加图例的完整代码.最好使用布局以漂亮的方式添加图例.

daily.pnl <- cars
nn <- ncol(daily.pnl)
layout(matrix(c(1,2),nrow=1), width=c(4,1)) 
par(mar=c(5,4,4,0)) #No margin on the right side
matplot(cumsum(as.data.frame(daily.pnl)),type="l")
par(mar=c(5,0,4,2)) #No margin on the left side
plot(c(0,1),type="n", axes=F, xlab="", ylab="")
legend("center", colnames(daily.pnl),col=seq_len(nn),cex=0.8,fill=seq_len(nn))
相关文章
相关标签/搜索