我想在使用ggplot绘制散点图时绘制等值线,但我无法正确使用stat_function
。
等值线基于距离公式:
sqrt((x1-x2)^2 + (y1-y2)^2)
这将涉及到IT技术,下面是需要翻译的内容:
看起来会像同心圆,但中心会是图表的原点:
到目前为止,我尝试了调用ggplot内部的距离函数,如下所示(注意:我使用x1 = 1和y1 = 1,因为在我的实际问题中我也有固定值):
distance <- function(x, y) {sqrt((x - 1)^2 + (y - 1)^2)}
ggplot(my_data, aes(x, y))+
geom_point()+
stat_function(fun=distance)
但是R返回了以下错误:
'stat_function()'中的计算失败:参数“y”丢失,没有默认值
我应该如何正确提供x和y值给stat_function
,以便它绘制一个通用的距离公式图,其中心位于原点?
stat_function
只能处理计算 y 值的函数。您需要重新排列公式,使其成为一个 y = f(x) 的函数。 - Roland