質問
散布図の作成とラベル付けにggplot2を使用しようとしています。私がプロットしている変数は両方とも、水平軸と垂直軸が標準偏差(平均からの1,2,3,4、... ect)の単位でプロットされるようにスケーリングされています。私ができるようにしたいのは、平均からの標準偏差の特定の制限を超えている要素のみにラベルを付けることです。理想的には、このラベル付けは別のデータ列に基づいています。
これを行う方法はありますか?
オンラインマニュアルを確認しましたが、プロットされたデータのラベルの定義については何も見つかりませんでした。
ヘルプを歓迎します!
ありがとう!
BEB
解決
サブセットを使用:
library(ggplot2)
x <- data.frame(a=1:10, b=rnorm(10))
x$lab <- letters[1:10]
ggplot(data=x, aes(a, b, label=lab)) +
geom_point() +
geom_text(data = subset(x, abs(b) > 0.2), vjust=0)
他のヒント
ラベル付けは次の方法で行うことができます:
library("ggplot2")
x <- data.frame(a=1:10, b=rnorm(10))
x$lab <- rep("", 10) # create empty labels
x$lab[c(1,3,4,5)] <- LETTERS[1:4] # some labels
ggplot(data=x, aes(x=a, y=b, label=lab)) + geom_point() + geom_text(vjust=0)
ggplot関数の外側のサブセット化:
library(ggplot2)
set.seed(1)
x <- data.frame(a = 1:10, b = rnorm(10))
x$lab <- letters[1:10]
x$lab[!(abs(x$b) > 0.5)] <- NA
ggplot(data = x, aes(a, b, label = lab)) +
geom_point() +
geom_text(vjust = 0)
qplotの使用:
qplot(a, b, data = x, label = lab, geom = c('point','text'))
所属していません StackOverflow