1) Existe-t-il une bibliothèque / fonction R qui implémenterait le placement d'étiquettes INTELLIGENT dans le tracé R? J'en ai essayé mais ils sont tous problématiques - de nombreuses étiquettes se chevauchent ou se chevauchent (ou d'autres objets dans l'intrigue, mais je vois que c'est beaucoup plus difficile à gérer).
2) Si non, y a-t-il un moyen d'aider CONFORTABLEMENT l'algorithme avec le placement des étiquettes pour des points problématiques particuliers? La solution la plus confortable et la plus efficace recherchée.
Vous pouvez jouer et tester d'autres possibilités avec mon exemple reproductible et voir si vous êtes en mesure d'obtenir de meilleurs résultats que moi:
# 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")
Pour l'étiquetage, j'ai ensuite essayé ces possibilités, personne n'est vraiment bon:
1) celui-ci est terrible:
text(x, y, labels = ShortSci, cex= 0.7, offset = 10)
2) celui-ci est bon si vous ne voulez pas placer d'étiquettes pour tous les points, mais juste pour les valeurs aberrantes, mais quand même, les étiquettes sont souvent mal placées:
identify(x, y, labels = ShortSci, cex = 0.7)
3) celui-ci avait l'air prometteur mais il y a le problème des étiquettes trop proches des points; J'ai dû les remplir d'espaces mais cela n'aide pas beaucoup:
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)
Merci d'avance!
EDIT: todo: essayez labcurve {Hmisc} .
install.packages("FField")
library(FField)
FFieldPtRepDemo()