annotate
을 사용하여 직선 세그먼트에 라벨을 지정하려고합니다. 그러나 주석의 각도를 선의 기울기로 설정하면 주석이 선 세그먼트에 정렬되지 않습니다.ggplot2 : 왜 내 텍스트 주석이 올바르게 정렬되지 않습니까?
library(ggplot2)
ggplot(data.frame(x = seq(0, 14, 0.1)), aes(x = x)) +
stat_function(fun = function(x) {
14 - x
}, geom = "line") +
theme_bw() +
annotate(
geom = "text",
x = 7.5, y = 7.5,
label = "x + y = 14",
angle = -45) # NISTunits::NISTradianTOdeg(atan(-1))
이 제공 :
누군가가이 현상을 설명하는 데 도움이, 어떻게이 문제를 해결하기 위해, 즉, 선분과 동일한 각도를 가지고있는 주석을 정렬 할 수 있습니까?
x 축이 Y 축으로 동일한 길이를 갖고 있지 않기 때문이다. 따라서 각도가 45가 아닙니다! 두 축의 스케일이 같을 경우 100 % 작동합니다. – Kabulan0lak
@ Kabulan0lak 훌륭합니다. 그래서 앵글에 뷰포트의 가로 세로 비율을 곱해야한다는 제안이 있습니까? 프로그래밍 방식으로 어떻게 할 수 있습니까? – tchakravarty
보기의 크기가 고정되어 있습니까? 그렇다면 축 x와 축 y의 비율을 적절한 각도로 계산할 수 있습니다 (예). – Kabulan0lak