2013-10-25 25 views
5

データフレームのプロットを作成したいと思います。その列の名前には特殊文字が含まれています。次の例を考えてみましょう:ggplot2:特殊文字を含む列をプロットする方法は?

f <- data.frame(foo=c(1, 2, 3), bar=c(4, 5, 6)) 
# The following line works fine 
ggplot(f) + geom_point(aes_string(x="foo", y="bar")) 
names(f) <- c("foo", "bar->baz") 
# The following also works, but seems not elegant 
ggplot(f) + geom_line(aes(x=foo, y=f[,"bar->baz"])) 
# I'd like something like the following, but this doesn't work. 
ggplot(f) + geom_line(aes_string(x="foo", y="bar->baz")) 

最後のコマンドの出力は次のとおりです。

Error in eval(expr, envir, enclos) : object 'bar' not found 

誰がこのプロットを作成する方法を知っていますか?またはこれは単にlimitation of ggplotですか?

答えて

7

あなたはこのように ``バッククォートを追加する必要があります

ggplot(f) + geom_line(aes_string(x="foo", y="`bar->baz`")) 

それとも

ggplot(f) + geom_line(aes(x=foo, y=`bar->baz`)) 
0

をPARAM < - 'TEST +'

をtestParam < - ペースト( '',param,''、9月=」 ")

プロット1 < - ggplot(dataset、aes_string(x = testParam))

関連する問題