我试图计算如何在text()
或grid.text()
函数(或R中的任何其他类似函数)中对x和y坐标使用不同的坐标系。
在下面的示例中,我想将text()
函数的Y坐标设置为距离屏幕底部10%,而不是使用Y比例的比例。我可以使用grid.text()
并且y = 0.1但我不知道如何将grid.text()
的X位置设置为绘图的X刻度。基本上,我想混合text()
和grid.text()
函数的功能。
我知道grid.text
可以选择传递单位,但我无法弄清楚如何使用图中的单位。
library(grid)
test= data.frame(
x = c(1,2,3),
y = c(12,10,3),
n = c(75,76,73)
)
par(mar = c(13,5,2,3))
plot(test$y ~ test$x,type="b")
text(x=test$x, y=-2, label=test$n, xpd=T)
答案 0 :(得分:3)
改写为:
使用grconvertY()将默认的7英寸显示尺寸转换为用户坐标:
opar <- par(mar = c(13,5,2,3))
plot(test$y ~ test$x,type="b")
text(x=test$x, y=grconvertY(0.1*7 , "in", "user") , label=test$n, xpd=T)
par(opar)
默认显示为7平方英寸(至少在我的机器上),但您需要为text
功能提供用户坐标。 grconvertY
和grconvertX
能够执行该转化,但您对X维度的用户坐标感到满意,因此您不应使用grconvertX
。