Q.
legendのラベル(図中のAの部分)やfacet_*のラベル(図中のBの部分)を短く変えたいのですが、どうすればよいでしょうか?
example.R
library(ggplot2)
ggplot(data=iris, aes(x=Petal.Length, fill=Species)) + geom_histogram(alpha=0.4, position="identity")
ggplot(data=iris, aes(x=Petal.Length)) + geom_histogram(position="identity") + facet_grid(Species ~ .)
A.
levels
関数を使ってfactorのlevelの名前(level attribute)を変えます。
OK_example.R
library(ggplot2)
levels(iris$Species)
# [1] "setosa" "versicolor" "virginica"
levels(iris$Species) <- c("S", "Ve", "Vi")
ggplot(data=iris, aes(x=Petal.Length, fill=Species)) + geom_histogram(alpha=0.4, position="identity")
ggplot(data=iris, aes(x=Petal.Length)) + geom_histogram(position="identity") + facet_grid(Species ~ .)
levels(x)
では今のlevel attributeが取得されます。このlevelの順序は保持したまま、表示名を変えるにはlevels(x) <- value
を使います。詳しくはlevels
関数のヘルプをみてください。結果は以下になります。
ちなみに表示名ではなくて表示順序を変えたい時は「x軸を並べ替えたい」を参考にしてください。
参考資料