0

考虑以下情节:

 par(xaxs='i',yaxs='i')
 q1 <- c(1000000.0,  908364.8,  876009.1,  847892.8,  824808.3,  805416.2,  785266.2, 770997.1,  753908.6,  744599.9,  706777.6,  674659.9,  634654.4,  601440.4, 568259.7,  535361.3,  493679.9,  465526.5,  429766.6,  395244.7,  361483.2, 332136.6, 308574.5, 285500.6, 262166.2 ,237989.0 , 210766.1,  188578.1, 166762.3 , 140399.8  ,114865.5)
 plot(q1, type = "l", lty = 1, lwd = 2, col = "darkolivegreen3", ylim = c(0,4*10^6), xlim = c(1,30), bty = "l")
 text(30, q1[30], labels = "text", col = "gray36", cex = 0.8, pos = 4)

在此处输入图像描述

我想在绿线最后一点的右侧添加标签“文本”(即 x = 30 的线上的点)。

我尝试了上面的代码,但没有显示文本!任何想法如何解决这个问题?谢谢!

4

2 回答 2

1

默认情况下,绘图中的内容被剪裁到绘图区域,您看不到文本,因为它已被剪裁。您可以使用该mtext函数将文本显式放置到边距中。或者,如果您指定par(xpd=NA),那么剪裁将被关闭(它仍然会剪裁到设备区域)并且使用该text函数绘制的文本现在将被绘制到边缘。无论哪种方式,您都可能希望在适当的边距中指定一些空间,以便为文本留出空间并且看起来不错。请参阅?par如何指定边距以及有关剪裁的更多详细信息。

于 2013-10-22T16:31:54.943 回答
0

我刚刚意识到这可以使用mtext

 mtext("text", side = 4, at = q1[30], las = 1)
于 2013-10-22T16:14:31.880 回答