水平abline在ggplot中不起作用

时间:2017-10-26 07:14:54

标签: r ggplot2 line

我目前正在为我正在撰写的论文做一些情节。为了在我的图表中保持一致性,我使用相同的图形设计。这是我的数据的一小部分摘录:

head(dailymeanCDSbondbasis)
   Dates           CDS-bond basis
1 2007-01-02       6.686319
2 2007-01-03       6.246953
3 2007-01-04       7.115593
4 2007-01-05       7.404475
5 2007-01-08       6.901632
6 2007-01-09       6.815203

现在我想在y轴上绘制x轴和CDS-bond-basis的日期,如下所示:

d <- melt(dailymeanCDSbondbasis, "Dates")
d$Dates <- as.Date(d$Dates)


cdsbondbasisplot <- ggplot(d, aes(Dates, value, color = variable)) +
geom_line(aes(linetype = variable, size=variable)) +
scale_linetype_manual(values=c("solid"))+
labs(color = NULL, linetype = NULL, size = NULL) +
theme_classic() +
theme(legend.position = "bottom") +
ylab("bp") +
scale_colour_manual(values=c("gray10")) +
scale_size_manual(values=c(1)) +
theme(
legend.position = "bottom",
legend.direction = "vertical",
legend.box.margin = margin(t = 20),
axis.title.x = element_text(margin = margin(t = 20)),
axis.title.y = element_text(margin = margin(r = 20))
)

我现在唯一想要插入的是水平底线为0.我尝试了如下。

cdsbondbasisplot +
abline(h=0, col="black", lty=2, lwd=0.5)

然而似乎没有发生任何事情,不显示abline。其他一切都很好,看起来像这样:

cdsbondbasisplot

我做错了什么?

1 个答案:

答案 0 :(得分:1)

在ggplot2中,有几个选项可以添加一个horiziontal行。你可以尝试:

geom_abline() 
geom_hline()