R.在直方图内的特定值处添加自定义标记

时间:2018-06-29 22:00:44

标签: r label histogram

我使用R制作了直方图(请参见所附图片)。这是代码:

hist(df$A, 
     border = rgb(1,0,0,0.8),
     main = "",
     breaks = 1000,
     las = 1,
     mgp = c(3, 0.6, 0),
     cex.axis = 1,
     xlim=c(-0.6,0.6))

我想在xf轴上但在直方图内的红线上方的df $ A的某些特定值(例如0.5704、0.5455、0.5555)处添加一个小的垂直刻度,以便随后标记这些位置具有特定名称(例如“ a”,“ b”,“ c”)。我知道如何使用mtext()添加名称,但是我不知道如何添加这些特定标记。任何建议都欢迎

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以将arrows()code = 0配合使用来绘制短线段。您可以通过y1参数设置终点来自定义身高,还可以更改其颜色等等。

x_marks <- c(0.5704, 0.5455,0.5555)
tickmark_height <- 500
arrows(x0 = x_marks, x1 = x_marks,
       y0 = rep(0, length(x_marks)), y1 = rep(tickmark_height, length(x_marks)),
       code = 0)