ベクトルに名前をつける時は、names(ベクトル)をつかう。
v = c(1,2,3) n = c("い", "ろ", "は") names(v) = n
これを纏めて行うと、
> setNames( 1:3, c("い", "ろ", "は") ) い ろ は 1 2 3
r-wakalangで@atusyさんがグラフの軸の見出しを簡略表示する方法を載せていたので拝借。 以下は、X軸の並びを名前順にしつつ、イニシャルで軸を表示する方法。
d <- data.frame( author = c('Eric J', 'Benatar Michael'), initial = c('EJ', 'BM'), y = 1:2 ) ggplot(d) + aes(author, y) + geom_col() + scale_x_discrete(labels = setNames(d$initial, d$author))