[英]Visualise "corrplot" in R with more than one variable/parameter
我正在使用corrplot
函數,它是R
corrplot
包的一部分,用於可視化我擁有的數據通道之間的相關性。 我的問題是我是否可以為圓圈分配兩個“因素”或參數......那么,例如,我可以讓圓圈的大小代表相關性,圓圈的顏色代表其他東西,例如滯后嗎? 我的數據實際上是互相關數據,我已經確定了最大相關/滯后並希望能夠在圖中將兩者可視化,這就是我想要這樣做的原因。
基本上我想要實現的目標與這個問題中的相同: R:使用 corrplot 使用圓圈的大小和顏色來可視化兩個變量(例如,相關性和 p 值) ,但是,這兩種解決方案都不起作用我和我在從 Github 安裝軟件包時遇到錯誤。
我有一個滯后和相關的向量:
CCO_lag = (0, NaN , -2 , NaN , -5 , -4 , -6 , -3 , 0 , NaN , 1 , 3 , NaN , 0 , -3 , NaN)
CCO_r = c(-0.4757 , NaN , 0.5679 , NaN , 0.5582 , 0.5899 , 0.5857 , 0.6256 , -0.4646 , NaN , -0.6286 , -0.4699 , NaN , -0.7710 , 0.5869 , NaN `)
假設我想使用corrplot
在一個1x16
正方形corrplot
其可視化,我希望圓圈的大小取決於CCO_r
的相關值,而圓圈的顏色取決於CCO_lag
的滯后值。
任何人都可以幫忙嗎?
謝謝!
這對我來說似乎不太像相關圖,但我們可以這樣做:
CCO_lag = c(0, NaN , -2 , NaN , -5 , -4 , -6 , -3 , 0 , NaN , 1 , 3 , NaN , 0 , -3 , NaN)
CCO_r = c(-0.4757 , NaN , 0.5679 , NaN , 0.5582 , 0.5899 , 0.5857 , 0.6256 , -0.4646 , NaN , -0.6286 , -0.4699 , NaN , -0.7710 , 0.5869 , NaN )
d = data.frame(id = 1:length(CCO_lag), CCO_lag, CCO_r)
ggplot(d, aes(x = id, y = "A", size = CCO_r, color = CCO_lag)) +
geom_point() +
scale_y_discrete(breaks = NULL) +
labs(y = "", x = "")
如果你有矩陣:
lag_mat = matrix(CCO_lag, 4)
r_mat = matrix(CCO_r, 4)
row = c(row(lag_mat))
col = c(col(lag_mat))
dd = data.frame(
lag = c(lag_mat), r = c(r_mat), row, col
)
ggplot(dd, aes(x = row, y = col, size = r, color = lag)) +
geom_point() +
theme(panel.grid = element_blank())
請注意,矩陣的第 1 行位於頂部,下方是編號較高的行,但圖的底部 y 值較低,而上方的 y 值較高。 你可能想改變它,或者它可能沒問題。 您可以將scale_y_reverse()
添加到您的繪圖中以進行切換。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.