如何在R中沿着一条直线或曲线编写文本?

4
我有一个数据集,并且我正在尝试使用lm()拟合线性模型,这部分很简单。 我还可以在散点图上使用abline(lm(x ~ y))绘制出这个拟合的图形。但现在我想写下拟合的参数,比如调整后的R平方,沿着这条线。 这样,如果我悬停在不同的数据集及其相应的适配值上,我应该能够打印沿着线的一些拟合值。在R中是否有可能实现这一点。

1
这里开始,然后您只需要计算线的角度,并根据模型拟合值中的一些调整文本放置的位置。 - joran
@joran,我已经查看了它,根据那个图表显示信息是相对简单的。我仍在思考,但认为集体智慧可能更好地解决这个问题。 - Sam
3
这是一个非常相似的问题,收到了几个不错的答案。 - Josh O'Brien
1个回答

3
是的,对于直线来说很容易做到,但曲线就比较棘手,使用等宽字体可能更简单。基本技巧是将您的线性方程转换为极坐标表达式,并使用角度导出该角度以设置text命令中的文本角度(使用图形参数中的srt参数)。
对于曲线,这会有些棘手(也许非比例字体能够简化)。您需要为每个带有角度的字母计算向量,然后使用strwidth计算每个字符的宽度。您需要生成一个角度和位置的字符向量,并通过循环调用text来遍历它们。在这里需要循环,因为text不能接受srt参数的向量。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接