我有存儲在data.frame
中的數據,我想繪製爲連續熱圖。我試過使用akima
包中的interp
函數,但由於數據可能非常大(200萬行),如果可能的話,我想避免這種情況,因爲它需要很長時間。這裏是我的數據格式重新格式化數據以繪製2D連續熱圖
l1 <- c(1,2,3)
grid1 <- expand.grid(l1, l1)
lprobdens <- c(0,2,4,2,8,10,4,8,2)
df <- cbind(grid1, lprobdens)
colnames(df) <- c("age1", "age2", "probdens")
age1 age2 probdens
1 1 0
2 1 2
3 1 4
1 2 2
2 2 8
3 2 10
1 3 4
2 3 8
3 3 2
我想將它格式化爲length(df$age1) x length(df$age2)
矩陣。我收集到一旦以這種方式格式化後,我將能夠使用基本功能(如image
)來繪製類似於使用akima
包創建的二維直方圖連續熱圖。這是我認爲轉換的數據應該看起來的方式。如果我錯了,請糾正我。
1 2 3
1 0 2 4
2 2 8 8
3 4 10 2
看起來好像ldply
但我似乎無法理清它是如何工作的。
我忘了提及,$年齡信息總是連續的和規則的,這樣,age1等於age2,但age1> = age2。我想這意味着它可以被歸類爲連續數據,並且不需要interp
函數。
你是如何得到最終產出的?我的意思是,它的理想目的是什麼?應急表? – SabDeM
對不起,我感到困惑。我輸入了這種格式,因爲我認爲這可以用'image'繪製。最終結果應該是x軸上的age1和y軸上的age2以及以熱色繪製的熱量圖。這有幫助嗎? – Jesse