1) Có thư viện / chức năng R nào sẽ triển khai vị trí nhãn THÔNG MINH trong biểu đồ R không? Tôi đã thử một số nhưng chúng đều có vấn đề - nhiều nhãn đang chồng lên nhau hoặc các điểm khác (hoặc các đối tượng khác trong cốt truyện, nhưng tôi thấy rằng điều này khó xử lý hơn nhiều).
2) Nếu không, có cách nào để GIẢI ĐÁP giúp thuật toán sắp xếp nhãn cho các điểm có vấn đề cụ thể không? Giải pháp thoải mái và hiệu quả nhất mong muốn.
Bạn có thể chơi và kiểm tra các khả năng khác với ví dụ có thể tái tạo của tôi và xem liệu bạn có thể đạt được kết quả tốt hơn tôi có không:
# 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")
Đối với việc dán nhãn, sau đó tôi đã thử những khả năng này, không có cái nào thực sự tốt:
1) cái này thật khủng khiếp:
text(x, y, labels = ShortSci, cex= 0.7, offset = 10)
2) Điều này là tốt nếu bạn không muốn đặt nhãn cho tất cả các điểm, mà chỉ cho các điểm ngoại lệ, tuy nhiên, các nhãn thường được đặt sai:
identify(x, y, labels = ShortSci, cex = 0.7)
3) cái này trông có vẻ dễ chịu nhưng có vấn đề là các nhãn quá gần với các điểm; Tôi đã phải đệm chúng bằng khoảng trắng nhưng điều này không giúp được gì nhiều:
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)
Cảm ơn bạn trước!
CHỈNH SỬA: todo: thử labcurve {Hmisc} .
install.packages("FField")
library(FField)
FFieldPtRepDemo()