1) R 플롯에서 INTELLIGENT 라벨 배치를 구현하는 R 라이브러리 / 기능이 있습니까? 몇 가지를 시도했지만 모두 문제가 있습니다. 많은 레이블이 서로 겹치거나 다른 점 (또는 플롯의 다른 개체)이 겹칩니다. 그러나 이것이 처리하기가 훨씬 더 어렵다는 것을 알았습니다.
2) 그렇지 않은 경우 특정 문제 지점에 대한 레이블 배치와 함께 알고리즘을 편안하게 도울 수있는 방법이 있습니까? 가장 편안하고 효율적인 솔루션을 원했습니다.
재현 가능한 예제를 사용 하여 다른 가능성을 테스트하고 테스트 할 수 있으며 내가 가진 것보다 더 나은 결과를 얻을 수 있는지 확인할 수 있습니다.
# data
x = c(0.8846, 1.1554, 0.9317, 0.9703, 0.9053, 0.9454, 1.0146, 0.9012,
0.9055, 1.3307)
y = c(0.9828, 1.0329, 0.931, 1.3794, 0.9273, 0.9605, 1.0259, 0.9542,
0.9717, 0.9357)
ShortSci = c("MotAlb", "PruMod", "EriRub", "LusMeg", "PhoOch", "PhoPho",
"SaxRub", "TurMer", "TurPil", "TurPhi")
# basic plot
plot(x, y, asp=1)
abline(h = 1, col = "green")
abline(v = 1, col = "green")
라벨링을 위해 다음 가능성을 시도했지만 아무도 정말 좋지 않습니다.
1) 이것은 끔찍합니다.
text(x, y, labels = ShortSci, cex= 0.7, offset = 10)
2) 모든 점에 레이블을 배치하지 않고 특이 치에 대해서만 레이블을 배치하는 것이 좋지만 여전히 레이블이 잘못 배치되는 경우가 많습니다.
identify(x, y, labels = ShortSci, cex = 0.7)
3) 이것은 유망 해 보이지만 레이블이 포인트에 너무 가깝다는 문제가 있습니다. 나는 그들을 공백으로 채워야했지만 이것은별로 도움이되지 않습니다.
require(maptools)
pointLabel(x, y, labels = paste(" ", ShortSci, " ", sep=""), cex=0.7)
4)
require(plotrix)
thigmophobe.labels(x, y, labels = ShortSci, cex=0.7, offset=0.5)
5)
require(calibrate)
textxy(x, y, labs=ShortSci, cx=0.7)
미리 감사드립니다!
편집 : 할 일 : labcurve {Hmisc} 시도 하십시오 .
install.packages("FField")
library(FField)
FFieldPtRepDemo()