前言
一、「ggalign」-轻松绘制超复杂可视化结果~ 二、可视化学习圈子是干什么的? 三、系统学习可视化 四、猜你喜欢
前言
我们的数据可视化课程已经上线啦!!目前课程的主要方向是 科研、统计、地理相关的学术性图形绘制方法,后续也会增加商务插图、机器学等、数据分析等方面的课程。课程免费新增,这点绝对良心!
我们第一个数据可视化交流圈子也已经上线了,主要以我的第一本书籍《科研论文配图绘制指南-基于Python》为基础进行拓展,提供「课堂式」教学视频,还有更多拓展内容,可视化技巧远超书籍本身,书籍修正和新增都会分享到圈子里面~~
参与课程或者圈子的你将获取到:学员答疑、可视化资源分享、可视化技巧补充、可视化业务代做(学员和甲方对接)、副业交流、提升认知等等。
「ggalign」-轻松绘制超复杂可视化结果~
最近,在给我们的R语言数据可视化课程新增内容时,发现了一个非常好用的可视化图表绘制工具-「ggalign」,一个专门对绘图布局调整和绘图注释的精细控制的可视化工具,让你可以创建出复杂的、具有出版质量
的可视化图形。
ggalign能做什么?
ggalign
专注于对多个图中的观测数据进行对齐
。它利用vctrs软件包中的 "观察数 "或 NROW() 函数来保持图块组织的一致性。
如果您曾为如何对齐具有独立排序的图块(如树枝图)或在多个图块中应用一致的分组或排序(如 k-means 聚类)而苦恼,galign 就是为了让这一切变得更容易而设计的。
该软件包与 ggplot2无缝集成,可灵活使用其 geoms、scales 和其他组件进行复杂的可视化。
可通过如下方式进行安装:
install.packages("ggalign")
ggalign特点
与 ggplot2 的集成 ggalign 构建在 ggplot2 的基础之上,因此用户可以利用 ggplot2 的所有功能和灵活性,同时获得增强的对齐功能。 条形图对齐 该包特别适合生成对齐的条形图,用户可以轻松创建多个条形图并进行横向或纵向对齐,以便于比较不同类别或组别的数据。 美观的图形设计 ggalign 提供了多种预设的样式和主题,用户可以选择以增强图形的视觉效果。这使得生成的图形更加美观,适合用于报告或展示。 灵活的布局选项 用户可以灵活地调整图形的布局,包括图例位置、轴标签和标题的样式,从而满足不同的可视化需求。 自动对齐功能 包含自动对齐的功能,可以确保多个图形在同一坐标系下对齐,避免因数据规模不同而导致的比较困难。
主要特性
集成决策树:
ggparty 允许用户从 party 或 partykit 包中生成的决策树创建可视化图形。 可以通过 ggplot2 的语法轻松地定制和扩展图形。
丰富的可视化选项:
提供多种图层(layers),用户可以根据需要添加文本标签、颜色映射和其他视觉元素。 支持分面(faceting),可以根据分类变量进行子图的创建。
易于使用:
对于熟悉 ggplot2 的用户,ggparty 提供了相似的语法结构,降低了学习曲线。
可视化案例
这一小节我们直接给出ggalign绘制的各种可视化图形结果,如下:
基础用法
library(ggalign)
set.seed(123)
small_mat <- matrix(rnorm(81), nrow = 9)
rownames(small_mat) <- paste0("row", seq_len(nrow(small_mat)))
colnames(small_mat) <- paste0("column", seq_len(ncol(small_mat)))
# initialize the heatmap layout, we can regard it as a normal ggplot object
ggheatmap(small_mat) +
# we can directly modify geoms, scales and other ggplot2 components
scale_fill_viridis_c() +
# add annotation in the top
hmanno("top") +
# in the top annotation, we add a dendrogram, and split observations into 3 groups
align_dendro(aes(color = branch), k = 3) +
# in the dendrogram we add a point geom
geom_point(aes(color = branch, y = y)) +
# change color mapping for the dendrogram
scale_color_brewer(palette = "Dark2")
复杂热力图样式
heatmap_with_four_side_guides <- ggheatmap(small_mat) +
scale_fill_viridis_c(name = "I'm from heatmap body") +
theme(axis.text.x = element_text(angle = -60, hjust = 0)) +
hmanno("t") +
align_dendro(aes(color = branch), k = 3L) +
scale_color_brewer(
name = "I'm from top annotation", palette = "Dark2",
guide = guide_legend(position = "right")
) +
hmanno("l") +
align_dendro(aes(color = branch), k = 3L) +
scale_color_brewer(
name = "I'm from left annotation", palette = "Dark2",
guide = guide_legend(position = "top")
) +
hmanno("b") +
align_dendro(aes(color = branch), k = 3L) +
scale_color_brewer(
name = "I'm from bottom annotation", palette = "Dark2",
guide = guide_legend(position = "left")
) +
hmanno("r") +
align_dendro(aes(color = branch), k = 3L) +
scale_color_brewer(
name = "I'm from right annotation", palette = "Dark2",
guide = guide_legend(position = "bottom")
) &
theme(plot.margin = margin())
heatmap_with_four_side_guides
其他可视化案例
更多关于ggalign工具包中的其他使用语法和绘图函数,感兴趣的同学可阅读:ggalign工具包官网[1]
更多好看的商业图表绘制案例,可以参与我们的商业图表绘制教程。
我的新书《科研论文配图绘制指南基于R语言》已经上市啦,作者签名版链接如下:
《科研论文配图绘制指南基于Python》作者专属半价优惠如下:
可视化学习圈子是干什么的?
可视化学习圈子是书籍「科研论文配图绘制指南-基于Python」一书的学下圈子:主要通过以下几个方面,给大家带来比纸质书籍更丰富的学习内容:
视频教学,和读者零距离互动交流 及时修正勘误和定期新增绘制知识点 拓展衍生,绘图知识点远超书籍本身 直播视频+拓展资料+答疑,学习更高效
「PS」:我们直播教学内容为课堂式教学,原作者带着大家对书籍一章、一节、一页的进行教学。而且直播的视频都会通过剪辑后整理成课程,圈子中的同学可以免费、反复观看。当然,新增内容和定期答疑,直播也是如此。
为何会有这个书籍学习社群?无门槛的微信群难免会鱼龙混杂,问题和质量都无法得到保证,而且一些关键问题经常被淹没,且没有沉淀价值。
随着添加我微信的人日益增多,向我提问的人也越来越多,随便回答一下就太不负责任了;不回答也不是很好;如果都仔细回答,我也有自己的工作并且确实很忙,真的有点心有余而力不足!所以我才会建立这么一个渠道来沉淀我的可视化技巧和分享经验,以及给大家提供一个坚持学习的平台。
微信扫码下方二维码即可参与我们的书籍学习圈子啦:
系统学习可视化
当然,在学习数据可视化的道路上,你也有很多问题得不到解答,也可以加入我们的可视化课程(可视化系列课程推文)后,在学员群里和大家一起谈论,一起进步,或者直接向我提问。如果我觉得你的问题很具有普适性,我会把它写成文章发布在公众号上,让更多人看到,有关我们数据可视化系列课程的服务内容,可以参考下面的 阅读原文。
猜你喜欢
ggalign工具包官网: https://yunuuuu.github.io/ggalign/index.html。