Используйте locator()
, функцию, которая позволяет получить координаты указателя мыши при нажатии на график.Затем используйте
plot(cars)
xy <- locator(n=2)
lines(xy, col="red", lwd=5)
lm(y~x, xy)
abline(coef(lm(y~x, xy)))
coef(lm(y~x, xy))
(Intercept) x
33.142094 1.529687
Конечно, правильный способ подгонки линий по данным - использовать правильную модель.Вот как вы можете сделать это с помощью lm
:
abline(coef(lm(dist~speed, cars)), col="blue")
Я сделал следующий график с этим кодом:
- Толстая красная линия - это линия, соединяющая мои две мышищелчки
- Черная линия - это
abline
через эти точки - Синяя линия - это линия наилучшего соответствия, созданная
lm
![enter image description here](https://i.stack.imgur.com/EHynA.png)
Предупреждение 1: locator
работает только на некоторых графических устройствах.См. ?locator
для получения более подробной информации.
Предупреждение 2: Рисование линий подгонки вручную может быть очень глупой идеей.Вместо этого используйте функцию регрессии, например lm
, или функцию сглаживания, например loess
.