繪製我有要在熱圖的可視化矩陣,具有ggplot,例如在R. geom_tile的數據是在變換矩陣,使得它可以與熱圖中的R
I II
A 1 2
B 3 4
格式電流
但是,要使用ggplot,我需要這個矩陣轉換成數據幀格式如下:
Var1 Var2 Value
A I 1
A II 2
B I 3
B II 4
如何變換矩陣,以這種格式,這樣我可以使用ggplot?我不希望可視化軟件包如gplot,因爲它看起來慢很多。謝謝。
繪製我有要在熱圖的可視化矩陣,具有ggplot,例如在R. geom_tile的數據是在變換矩陣,使得它可以與熱圖中的R
I II
A 1 2
B 3 4
格式電流
但是,要使用ggplot,我需要這個矩陣轉換成數據幀格式如下:
Var1 Var2 Value
A I 1
A II 2
B I 3
B II 4
如何變換矩陣,以這種格式,這樣我可以使用ggplot?我不希望可視化軟件包如gplot,因爲它看起來慢很多。謝謝。
你可以顯示代碼如何創建數據?我嘗試編碼自己,融化工作正常。
a = matrix(c(1, 3, 2, 4), 2, dimnames = list(c('A', 'B'), c('I', 'II')))
melt(a)
這就是我得到:
Var1 Var2 value
1 A I 1
2 B I 3
3 A II 2
4 B II 4
我將數據框轉換爲矩陣後,它的工作原理。看來,熔解()不能處理數據幀。 –
@ S.Wang事實上,融化可以處理數據幀和矩陣。如果你想將rownames作爲id.var,熔化可以從矩陣中捕獲rownames,但對於數據框,我相信你必須爲rownames創建一個變量,然後使用參數id.var來引用它。有關融化數據框的更多詳細信息,請嘗試?melt.data.frame –
@ S.Wang您在您的問題中提到「我有一個矩陣」 –
''從reshape2' melt'不正是這個 –
@Patronus你能解釋一下嗎? I和II是列名,A和B是行名。當我使用熔化()時,我只得到一列變量和一列值,並且行名消失。它說類似「沒有id變量;使用所有作爲度量變量」 –