Как нарисовать угол ar c между отрезками линии в ggplot2? - PullRequest
2 голосов
/ 03 августа 2020

Можно ли использовать ggplot2 (или plotnine или другую грамматику графических пакетов), чтобы нарисовать угол ar c между двумя отрезками прямых линий, как показано ниже?

(игнорировать круг эт c.)

введите описание изображения здесь

Я знаю, что это можно сделать с помощью графических программ, таких как Geogebra. Но мне интересно рисовать метку угла (и метку) программно в Jupyter.

(Кстати, есть ли слово для этого «угол ar c»? Я не Не знаю, как это назвать, просто использовал "угол ар c".)

1 Ответ

1 голос
/ 03 августа 2020

Для R существует пакет ggforce, расширяющий ggplot2 и определяющий geom_arc(), который очень похож. Пример ниже:

library(ggplot2)
library(ggforce)

start <- c(x = 0, y = 0)

dat <- data.frame(
  x = start[c("x", "x")],
  y = start[c("y", "y")],
  xend = c(1, 4),
  yend = c(5, 1)
)

angles <- with(dat, atan2(xend - x, yend - y))

ggplot(dat) +
  geom_segment(aes(x, y, xend = xend, yend = yend)) +
  geom_arc(aes(x0 = start["x"], y0 = start["y"], r = 1, 
               start = angles[1], end = angles[2])) +
  coord_equal()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...