[問題] 利用迴圈畫圖 ggplot2

作者: k97231 (AL)   2018-10-05 12:43:07
我有好幾個data frame
這些data frame 都有一些名字相同的column
ex
df1
v1 v2 v3 v5 ...
0 1 2 5
.. .. .. ..
df2
v1 v2 v4 v6 ...
0 1 2 5
.. .. .. ..
而我想根據這些相同的column畫圖 不同column一張
所以我先用 找到有交集的column
然後將這些焦急帶入迴圈中
a=intersect(colnames(df1),colnames(df2))
$a
>"v1","v2"
for ( col in a) {
g=ggplot()
g+geom_density(data=df1,aes(x=a)+
geom_density(data=df2,aes(x=a)
}
但每次執行此迴圈都不會出現任何圖
但若事先指定a="v1"時
不執行迴圈時
並只執行畫圖的指令
就可以畫出正確的圖
想問如果要用迴圈畫圖要怎麼修改迴圈呢??
作者: andrew43 (討厭有好心推文後刪文者)   2018-10-05 12:57:00
完整的ggplot物件需要被print()才行。簡單說你的g+geom_....整段要用print包起來
作者: F0011010101 (法客)   2018-10-05 14:56:00
你迴圈裡沒用到col啊
作者: evallen (小羅)   2018-10-11 08:33:00
Png();print(g);dev.off()
作者: p2p8ppp (給我錢)   2017-05-02 22:43:00
aes_string(x = col)

Links booklink

Contact Us: admin [ a t ] ucptt.com