持续一个月,该来的更新总归会来的,和0.9.6相比,内容基本保持了稳定,主要是新增和删减,这一轮的核心是热图注释,新增的内容如下:
注释
anno_row/col_custom()
——直角坐标自定义行列注释;
anno_row/col/heat()
——极坐标行列热图注释;
anno_hc_bar()
——聚类条形注释;
anno_row/col_tree()
——原anno_tree()
拆分成两个,增加了进化树(不是很完美)支持。
anno_bar/bar2/boxplot()
——直角坐标柱状图和箱线图注释。
随机森林(rand_forest()
)/回归(calc_relimp()
)方面的支持(焦硕相关文章统一实现)
自由注释解决方案(借鉴了Y叔aplot
包,我的方案更适合配合ggcor
使用)
删除的内容也很多,好比原来对于上下三角使用不同映射颜色的图层函数,全部删除了,替代方案是在包里新增了geom_anno_tile()
和geom_anno_tile2()
,这两个函数也是anno_row/col/heat()的底层函数
。
这仅仅是一份更新说明,更多详细的解释我们会慢慢更新。
最新是0.9.7,有兴趣的自行更新。
## install.packages('devtools')
devtools::install_github('houyunhuang/ggcor', force = TRUE)
packageVersion('ggcor')
## [1] '0.9.7'
library(ggcor)
dd <- rand_correlate(20, 12)
dd2 <- data.frame(x = sample(colnames(dd[[1]]), 200, replace = TRUE),
y = sample(rownames(dd[[1]]), 200, replace = TRUE),
group = sample(LETTERS[1:3], 200, replace = TRUE),
value = rnorm(200))
dd3 <- data.frame(x = colnames(dd[[1]]),
y = sample(2:30, 12))
dd4 <- data.frame(x = rownames(dd[[1]]),
y = sample(2:30, 20))
p <- quickcor(dd) + geom_square()
p + anno_bar(dd2, aes(x))
p + anno_bar(dd2, aes(y = y, fill = group))
p + anno_bar2(dd3, aes(x, y), flip = TRUE, pos = 'bottom')
p + anno_bar2(dd4, aes(y, x), flip = TRUE, pos = 'left', width = 0.4)
p + anno_boxplot(dd2, aes(x, value, fill = group))
p + anno_boxplot(dd2, aes(value, y), pos = 'right', width = 0.35)
library(ggplot2)
dd5 <- rand_dataset(10, 120) %>%
gcor_tbl(cluster = TRUE)
dd6 <- rand_dataset(3, 120, col.names = LETTERS[1:3]) %>%
gcor_tbl(cluster = TRUE, 'LETTERS')
dd7 <- rand_dataset(10, 3, row.names = letters[1:3]) %>%
gcor_tbl(cluster = TRUE, 'letters')
quickcor(dd5, inner = 1.2, outer = 0.8, open = 45, circular = TRUE) +
geom_colour(aes(fill = value), colour = NA) +
anno_row_heat(dd6, aes(fill0 = LETTERS), width = 1.2) +
anno_col_heat(dd7, aes(colour = letters), height = 1.2, geom = 'point') +
anno_row_tree(bcols = c('#E41A1C', '#377EB8', '#4DAF4A')) +
anno_col_tree() +
set_p_xaxis() +
set_p_yaxis() +
scale_fill_distiller() +
scale_fill0_gradientn(colours = red_blue()) +
scale_colour_viridis_b()
dd8 <- rand_dataset(12, 20) %>% gcor_tbl()
dd9 <- data.frame(x = paste0('var', 1:12), y = sample(2:30, 12))
p <- ggplot(dd9, aes(x, y)) + geom_col() + remove_x_axis()
ggplot(dd8, aes(.col.names, .row.names)) +
geom_point(aes(size = value), colour = 'grey35') +
anno_col_custom(p, height = 0.3) +
theme_bw() +
theme(axis.title = element_blank())
没啥小结的,提前祝各位儿童节快乐。
联系客服