1)Rプロットにインテリジェントラベル配置を実装する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)
前もって感謝します!
編集: todo:labcurve {Hmisc}を試してください。
install.packages("FField")
library(FField)
FFieldPtRepDemo()