寫在前面
天氣開始暖和了??,發(fā)現(xiàn)旅游的人好多啊!~??
不知道自己什么時(shí)候能有時(shí)間出去看看外面的世界,實(shí)在是太忙了。??
最近用到的有個(gè)包感覺很不錯(cuò),分享給大家,funkyheatmap包。??
完美可視化數(shù)據(jù),包括字符型和數(shù)值型。??
這個(gè)包是出自Nature Biotechnology中,文章在這里:??
Saelens, W., Cannoodt, R., Todorov, H. et al. A comparison of single-cell trajectory inference methods. Nat Biotechnol 37, 547–554 (2019). https://doi.org/10.1038/s41587-019-0071-9 IF: 68.164 Q1

顏值還是蠻高的,大家學(xué)起來(lái)啊,可以用來(lái)可視化臨床信息的baseline、基因的基本信息等等。??

用到的包
rm(list = ls())
library(tidyverse)
library(funkyheatmap)
示例數(shù)據(jù)
今天用到的是diamonds數(shù)據(jù),非常經(jīng)典的dataset。??
dat1 <- diamonds %>%
rownames_to_column(., "id") %>%
head(20)
DT::datatable(dat1)

簡(jiǎn)單可視化
大家直接使用funky_heatmap即可,是不是顏值還不錯(cuò)。??
funky_heatmap(dat1,
column_info = NULL,
row_info = NULL,
column_groups = NULL,
row_groups = NULL,
palettes = NULL,
scale_column = T,
add_abc = T,
col_annot_offset = 3,
col_annot_angle = 35,
removed_entries = NULL,
expand = c(xmin = 0, xmax = 2, ymin = 0, ymax = 0)
)

復(fù)雜繪圖
我們?cè)購(gòu)?fù)現(xiàn)一下這篇Nature Biotechnology上的圖吧,需要用到kableExtra包內(nèi)的數(shù)據(jù)。??
5.1 加載數(shù)據(jù)
library(kableExtra)
data("dynbenchmark_data")
5.2 查看數(shù)據(jù)
看一下數(shù)據(jù)類型吧。??
dat2 <- dynbenchmark_data$data
dat2[,1:12]

5.3 提取列名
數(shù)據(jù)太大,我們先只提取其中幾列進(jìn)行可視化吧。??
preview_cols <- c(
"id",
"method_source",
"method_platform",
"benchmark_overall_norm_correlation",
"benchmark_overall_norm_featureimp_wcor",
"benchmark_overall_norm_F1_branches",
"benchmark_overall_norm_him",
"benchmark_overall_overall"
)
dat2[,preview_cols]

5.4 初步繪圖
funky_heatmap(dat2[,preview_cols])

5.5 列信息
提取一下列信息,后面會(huì)用到。??
column_info <- dynbenchmark_data$column_info
column_info

5.6 再次可視化
把data都輸入進(jìn)去吧,再畫一下圖看看,顏值高多啦。??
funky_heatmap(dat2, column_info = column_info)

5.7 列的分組信息
column_groups <- dynbenchmark_data$column_groups
column_groups

5.8 行信息
row_info <- dynbenchmark_data$row_info
row_info

5.9 行的分組信息
row_groups <- dynbenchmark_data$row_groups
row_groups

5.10 分組配色
我們給不同分組配上不同的配色。??
palettes <- dynbenchmark_data$palettes
print(palettes)

5.11 最終可視化
Perfect!~??
顏值很高,大家都沖啊!~??
funky_heatmap(
data = dat2,
column_info = column_info,
column_groups = column_groups,
row_info = row_info,
row_groups = row_groups,
palettes = palettes,
col_annot_offset = 3.2
)


<center>最后祝大家早日不卷!~</center>
點(diǎn)個(gè)在看吧各位~ ?.???? ??? ?
<center> <b>?? 往期精彩 <b> </center>
?? <font size=1>?? WGCNA | 值得你深入學(xué)習(xí)的生信分析方法!~</font>
?? <font size=1>?? ComplexHeatmap | 顏狗寫的高顏值熱圖代碼!</font>
?? <font size=1>?? ComplexHeatmap | 你的熱圖注釋還擠在一起看不清嗎???</font>
?? <font size=1>?? Google | 谷歌翻譯崩了我們?cè)趺崔k???(附完美解決方案)</font>
?? <font size=1>?? scRNA-seq | 吐血整理的單細(xì)胞入門教程</font>
?? <font size=1>?? NetworkD3 | 讓我們一起畫個(gè)動(dòng)態(tài)的?;鶊D吧~</font>
?? <font size=1>?? RColorBrewer | 再多的配色也能輕松搞定!~</font>
?? <font size=1>?? rms | 批量完成你的線性回歸</font>
?? <font size=1>?? CMplot | 完美復(fù)刻N(yùn)ature上的曼哈頓圖</font>
?? <font size=1>?? Network | 高顏值動(dòng)態(tài)網(wǎng)絡(luò)可視化工具</font>
?? <font size=1>?? boxjitter | 完美復(fù)刻N(yùn)ature上的高顏值統(tǒng)計(jì)圖</font>
?? <font size=1>?? linkET | 完美解決ggcor安裝失敗方案(附教程)</font>
?? <font size=1>......</font>
本文由mdnice多平臺(tái)發(fā)布