1) Apakah ada library / fungsi R yang akan menerapkan penempatan label CERDAS pada plot R? Saya mencoba beberapa tetapi semuanya bermasalah - banyak label yang tumpang tindih satu sama lain atau titik lain (atau objek lain dalam plot, tetapi saya melihat bahwa ini jauh lebih sulit untuk ditangani).
2) Jika tidak, adakah cara untuk dengan NYAMAN membantu algoritme dengan penempatan label untuk poin bermasalah tertentu? Solusi paling nyaman dan efisien yang diinginkan.
Anda dapat bermain dan menguji kemungkinan lain dengan contoh saya yang dapat direproduksi dan melihat apakah Anda dapat mencapai hasil yang lebih baik daripada yang saya miliki:
# 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")
Untuk pelabelan, saya kemudian mencoba kemungkinan ini, tidak ada yang benar-benar bagus:
1) yang ini mengerikan:
text(x, y, labels = ShortSci, cex= 0.7, offset = 10)
2) yang ini bagus jika Anda tidak ingin menempatkan label untuk semua titik, tetapi hanya untuk pencilan, tetapi tetap saja, label sering salah ditempatkan:
identify(x, y, labels = ShortSci, cex = 0.7)
3) yang satu ini tampak menjanjikan tetapi ada masalah label yang terlalu dekat dengan poin; Saya harus memberi mereka spasi tetapi ini tidak banyak membantu:
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)
Terima kasih sebelumnya!
EDIT: todo: coba labcurve {Hmisc} .
install.packages("FField")
library(FField)
FFieldPtRepDemo()