news 2026/4/30 5:13:10

ggplot2优雅的绘制饼状热图

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ggplot2优雅的绘制饼状热图
欢迎关注R语言数据分析指南

最近看到一张非常有意思的图,暂且称之为饼状热图,与corrplot所绘制的有所不同此图使用的为离散型变量,例图如下所展示;由于作者未提供原始数据,小编自己构建了一份数据来进行初步的展示

论文内容

Systematic profiling of the chicken gut microbiome reveals dietary supplementation with antibiotics alters expression of multiple microbial pathways with minimal impact on community structure

此图乍一看觉得似曾相识,但是仔细一看又会发现好像不是那么的容易;应该是没有现成的包来一步出图,由于作者也未有提供数据那只有靠猜数据结构来进行可视化了,细节当然是很多,小编这次只是绘制主体图,细节问题留待以后再做介绍

加载R包
library(tidyverse) library(scatterpie) library(ggsci) library(cowplot)
数据清洗
p <- read_tsv("data1.txt") %>% filter(Compartments %in% c("BS","RS","RE","VE","SE","LE")) %>% select(1,2,Compartments) %>% left_join(.,read_tsv("data2.txt") %>% column_to_rownames(var="FAPROTAX") %>% t() %>% as.data.frame() %>% rownames_to_column(var="Compartments") %>% pivot_longer(-Compartments),by="Compartments") %>% filter(Compartments=="BS", SampleID %in% c(read_tsv("data1.txt") %>% select(1) %>% distinct() %>% head(10) %>% pull())) %>% select(-value,-Compartments) %>% group_by(SampleID,name) %>% count(Phylum) %>% pivot_wider(.,names_from=Phylum,values_from = n)
构建绘图数据
df <- p %>% left_join(.,p %>% select(name) %>% distinct() %>% rownames_to_column(var="lat"),by="name") %>% mutate(long=case_when(SampleID =="BCCCK1" ~1,SampleID =="BCCCK2" ~2,SampleID =="BCCCK3" ~3, SampleID =="BCCNPK1" ~4,SampleID =="BCCNPK2" ~5,SampleID =="BCCNPK3" ~6, SampleID =="BCCNPKM1" ~7,SampleID =="BCCNPKM2" ~8,SampleID =="BCCNPKM3" ~9, SampleID =="BHLCK1" ~10),lat=as.numeric(lat))
绘制饼状热图
p1 <- ggplot(aes(x=long,y=lat),data=df) + geom_tile(color="black",fill="white")+ geom_scatterpie(aes(x=long,y=lat,r=0.4),data=df, color=NA, cols=c("Abditibacteriota","Acidobacteriota","Actinobacteriota", "Alphaproteobacteria","Bacteroidota")) + coord_equal()+ scale_fill_brewer()+ scale_x_discrete(expand = c(0,0))+ scale_y_discrete(expand = c(0,0))+ theme_test()+ theme(axis.text.x=element_text(angle = 90,vjust = 0.5,hjust = 1), axis.ticks = element_blank(), axis.text.y=element_blank(), axis.title = element_blank(), legend.title = element_blank(), legend.key=element_blank(), # 图例键为空 legend.text = element_text(color="black",size=9), # 定义图例文本 legend.spacing.x=unit(0.1,'cm'), # 定义文本书平距离 legend.key.width=unit(0.5,'cm'), # 定义图例水平大小 legend.key.height=unit(0.5,'cm'), # 定义图例垂直大小 legend.background=element_blank())
绘制文本
p2 <- df %>% select(name,lat) %>% arrange(lat) %>% mutate(type="A") %>% ggplot(aes(type,name))+ coord_cartesian(clip="off")+ scale_x_discrete(expand = c(0,0))+ # scale_y_discrete(expand = c(0,0))+ theme(panel.background = element_rect(fill="white"), axis.ticks = element_blank(), axis.text.y=element_text(color="black"), axis.title=element_blank(),axis.text.x=element_blank())
拼图
ggdraw(xlim=c(-0.45,1))+ draw_plot(p2,x=-0.4)+ draw_plot(p1,x=0.06)

AI大模型学习福利

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。


因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获

四、AI大模型商业化落地方案

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 10:33:01

终极NVIDIA显卡性能解锁:游戏帧率提升30%的隐藏技巧

终极NVIDIA显卡性能解锁&#xff1a;游戏帧率提升30%的隐藏技巧 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector NVIDIA Profile Inspector是一款能够深度挖掘NVIDIA显卡性能的利器&#xff0c;它通过解…

作者头像 李华
网站建设 2026/4/21 14:48:12

华硕笔记本G-Helper深度体验:3大实战技巧解锁极致性能优化

作为一名华硕笔记本的资深玩家&#xff0c;我深知性能调校的重要性。今天要和大家分享的G-Helper&#xff0c;绝对是你笔记本性能优化的得力助手&#xff01;这款轻量级工具不仅能完美替代臃肿的Armoury Crate&#xff0c;更能在不影响系统稳定性的前提下&#xff0c;让硬件性能…

作者头像 李华
网站建设 2026/4/17 21:26:27

显卡性能优化终极指南:用NVIDIA Profile Inspector释放显卡隐藏潜力

你是否曾因游戏画面撕裂而烦恼&#xff1f;是否觉得显卡性能没有完全发挥&#xff1f;今天&#xff0c;我将带你深入了解一款强大的显卡调校工具——NVIDIA Profile Inspector&#xff0c;它能帮你解决这些困扰&#xff0c;让你的显卡性能得到最大程度的释放。&#x1f60a; 【…

作者头像 李华
网站建设 2026/4/20 0:03:31

【开源项目】大模型RAG实战:手把手教你搭建能“读懂“文档的智能问答系统,小白也能学会![特殊字符]

文章介绍了一个名为"Everything plus RAG"的智能文档问答系统&#xff0c;通过RAG技术结合传统全文搜索和AI问答的优点&#xff0c;实现从海量文档中快速找到准确答案。系统采用三层架构&#xff0c;核心技术包括混合检索(BM25向量检索)、RRF融合算法、查询重写和提示…

作者头像 李华
网站建设 2026/4/18 14:10:36

G-Helper轻量化教程:让华硕笔记本焕发新生的必备工具

G-Helper轻量化教程&#xff1a;让华硕笔记本焕发新生的必备工具 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目地址…

作者头像 李华