五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

敲黑板?。⌒≡平棠銓W(xué)習(xí)R包-ggalluvial,繪制炫酷的?;鶊D(Sankey

2023-09-27 15:24 作者:爾云間  | 我要投稿

小伙伴平時面對多個數(shù)據(jù)關(guān)系不知道如何繪制圖,一般來說使用常見的表格已經(jīng)滿足不了小伙伴,并且也不好看。而今天小云給大家介紹的?;鶊D可以呈現(xiàn)數(shù)據(jù)的流動和分布。而桑基圖(Sankey)作為相對復(fù)雜的圖表種類,平時很少用到,主要是它使用的而環(huán)境不多,并且制作難度很大,但是?;鶊D可以很好的展示我們數(shù)據(jù)的分布。 我們就帶小伙伴去學(xué)習(xí)?;鶊D的繪制,小云帶小伙伴繪制的?;鶊D是一種特定類型的流程圖,其中圖中延伸分支的寬度對應(yīng)數(shù)據(jù)流量的大小,通常應(yīng)用我們數(shù)據(jù)的可視化分析。

接下里小云就大家去學(xué)習(xí)吧!

首先我們先載入R包,主要用到主要的用到還是ggalluvial這專門繪制?;鶊D的包 library(ggalluvial) library(ggplot2) library(dplyr) #這里小云使用的實例數(shù)據(jù)帶領(lǐng)大家去學(xué)習(xí),主要用的使用TCGA數(shù)據(jù)集中的LIHC的臨床數(shù)據(jù)進行展示,大家可以根據(jù)數(shù)據(jù)格式處理自己的臨床數(shù)據(jù)。

#讀入LIHC臨床數(shù)據(jù) LIHC <- read.csv("data.csv",header=TRUE) #在這里展示數(shù)據(jù)情況 head(LIHC) summary(LIHC) 小伙伴注意下:?;鶊D的數(shù)據(jù)結(jié)構(gòu)需要節(jié)點,權(quán)重等信息,而ggalluvial的輸入數(shù)據(jù)可以是長數(shù)據(jù)亦可以是寬數(shù)據(jù) 我們先對臨床數(shù)據(jù)進行簡單的處理得到四個變量的頻數(shù),整理成寬數(shù)據(jù)。: #分組計算頻數(shù) LIHCData <- group_by(LIHC,AGE,SEX,AJCC_PATHOLOGIC_TUMOR_STAGE,OS_STATUS) %>% summarise(., count = n()) #查看寬數(shù)據(jù)格式 head(LIHCData)

上述數(shù)據(jù)處理完成,我們開始去繪制?;鶊D:

ggplot(as.data.frame(LIHCData), ??????aes(axis1 = AJCC_PATHOLOGIC_TUMOR_STAGE, axis2 = SEX, axis3 = AGE, ??????????y= count)) + ?scale_x_discrete(limits = c("AJCC_STAGE", "SEX", "AGE"), expand = c(.1, .05)) + ?geom_alluvium(aes(fill = OS_STATUS)) + ?geom_stratum() + geom_text(stat = "stratum", label.strata = TRUE) + ?theme_minimal() + ?ggtitle("Patients in the TCGA-LIHC cohort", ?????????"stratified by demographics and survival")

上述代碼中,axis參數(shù)設(shè)置待展示的節(jié)點信息(就是柱子) 還有g(shù)eom_alluvium參數(shù)設(shè)置的是組間面積連接,這個地方小云這里按照生存狀態(tài)分組;小伙伴可以按照參數(shù)設(shè)置自行安排。 接下來我們對長數(shù)據(jù)示例的展示: ggplot2通常處理的是長表格的模式,那我們就使用to_lodes_form函數(shù)即可轉(zhuǎn)換 #to_lodes_form生成alluvium和stratum列,主分組位于key列中 LIHC_long <- to_lodes_form(data.frame(LIHCData), ?????????????????????????????key = "Demographic", ?????????????????????????????axes = 1:3) head(LIHC_long)

然后接下來繪制?;鶊D:

# 繪制?;鶊D ggplot(data = LIHC_long, ??????aes(x = Demographic, stratum = stratum, alluvium = alluvium, ??????????y = count, label = stratum)) + ?geom_alluvium(aes(fill = OS_STATUS)) + ?geom_stratum() + geom_text(stat = "stratum") + ?theme_minimal() + ?ggtitle("Patients in the TCGA-LIHC cohort", ?????????"stratified by demographics and survival")

接下來我們還以利用?;鶊D去展示狀態(tài)變化的趨勢 這里我們使用R包中內(nèi)置數(shù)據(jù)集 vaccinations?這個可以展示同一個項目下不同生存狀態(tài)的情況 感興趣的小伙伴可以按照一下數(shù)據(jù)形式去設(shè)置自己的數(shù)據(jù)集:

data(vaccinations) levels(vaccinations$response) <- rev(levels(vaccinations$response))#小云在這里作為演示 接下來繪制?;鶊D: ggplot(vaccinations, ??????aes(x = survey, stratum = response, alluvium = subject, ??????????y = freq, ??????????fill = response, label = response)) + ?scale_x_discrete(expand = c(.1, .1)) + ?geom_flow() + ?geom_stratum(alpha = .5) + ?geom_text(stat = "stratum", size = 3) + ?theme(legend.position = "none") + ?ggtitle("vaccination survey responses at three points in time")

這樣一來狀態(tài)變化的趨勢就展示出來了。 上述就是如何使用R包-ggalluvial繪制桑基圖!,小伙伴有沒有心動呢,快去設(shè)置自己的數(shù)據(jù)集去完成?;鶊D。小云在這里提醒大家一下,要注意多多理解代碼中參數(shù)的含義,這樣能把自己可視化的結(jié)果展示成自己的圖片。

敲黑板!!小云教你學(xué)習(xí)R包-ggalluvial,繪制炫酷的?;鶊D(Sankey的評論 (共 條)

分享到微博請遵守國家法律
含山县| 威宁| 漯河市| 遂平县| 凤山市| 新营市| 广南县| 苏尼特左旗| 莱西市| 武陟县| 望城县| 娄烦县| 类乌齐县| 东乡| 泰州市| 德保县| 丹阳市| 石家庄市| 温宿县| 莲花县| 香港| 崇文区| 庆安县| 赞皇县| 茂名市| 抚远县| 吴川市| 拉孜县| 萨迦县| 新绛县| 永川市| 兰西县| 肃南| 翼城县| 泸溪县| 杭州市| 龙州县| 衡阳县| 台中市| 德惠市| 华安县|