用R语言画柱形图怎么让屁股朝右
发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,本篇内容主要讲解"用R语言画柱形图怎么让屁股朝右",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"用R语言画柱形图怎么让屁股朝右"吧!image.png因为A
千家信息网最后更新 2025年01月25日用R语言画柱形图怎么让屁股朝右
本篇内容主要讲解"用R语言画柱形图怎么让屁股朝右",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"用R语言画柱形图怎么让屁股朝右"吧!
因为A图的数据较多,我们来模仿B图,过程其实是一样的
左边两幅图是柱形图叠加误差线还叠加了散点图 最右侧的图可以用一个热图来画
最左边的屁股朝右的柱形图还是第一次画,查了一下可以借助
scale_y_reverse()
函数实现
set.seed(1234)
x<-seq(5,10,by=0.5)
df<-data.frame(`s__Klebsiella_phage_vB_KpnP_SU552A` = sample(x,10,replace = T),
`s__Escherichia_phage_ECBP5` = sample(x,10,replace = T),
`s__Clostridium_phage_phi8074-B1` = sample(x,10,replace = T),
check.names = F)
head(df)
宽格式转换为长格式df%>%
reshape2::melt() -> df1
分组求均值和标准差library(dplyr)
df%>%
reshape2::melt()%>%
group_by(variable)%>%
summarise(mean_value=mean(value),
sd_value=sd(value)) -> df2
柱形图叠加误差线和散点图ggplot()+
geom_col(data=df2,aes(x=variable,y=mean_value),
fill="#8babd3",
color="black")+
geom_errorbar(data=df2,aes(x=variable,
ymin=mean_value-sd_value,
ymax=mean_value+sd_value),
width=0.2)+
geom_jitter(data=df1,aes(x=variable,y=value),
width = 0.2,color="grey")
接下来就是调整坐标轴,让屁股朝右ggplot()+
geom_col(data=df2,aes(x=variable,y=mean_value),
fill="#8babd3",
color="black")+
geom_errorbar(data=df2,aes(x=variable,
ymin=mean_value-sd_value+0.001,
ymax=mean_value+sd_value),
width=0.2)+
geom_jitter(data=df1,aes(x=variable,y=value),
width = 0.2,color="grey")+
#scale_y_continuous(expand = c(0,0))+
theme_bw()+
coord_flip()+
scale_y_reverse(expand=c(0,0),
position="right")+
labs(x=NULL,y=NULL)
第二个柱形图也直接用这个数据画了ggplot()+
geom_col(data=df2,aes(x=variable,y=mean_value),
fill="#ffc080",
color="black")+
geom_errorbar(data=df2,aes(x=variable,
ymin=mean_value-sd_value+0.001,
ymax=mean_value+sd_value),
width=0.2)+
geom_jitter(data=df1,aes(x=variable,y=value),
width = 0.2,color="grey")+
scale_y_continuous(expand = c(0,0),
position = "right")+
theme_bw()+
coord_flip()+
labs(x=NULL,y=NULL)+
theme(axis.text.y = element_blank(),
axis.ticks.y = element_blank())
接下来是构造最右侧的热图数据df3<-data.frame(x="A",
y=c("s__Klebsiella_phage_vB_KpnP_SU552A",
"s__Escherichia_phage_ECBP5",
"s__Clostridium_phage_phi8074-B1"),
group=c("f__Siphoviridae",
"f__Podoviridae",
"f__Podoviridae"))
ggplot(df3,aes(x=x,y=y))+
geom_tile(aes(fill=group),show.legend = F)+
labs(x=NULL,y=NULL)+
scale_x_discrete(expand = c(0,0))+
scale_y_discrete(expand = c(0,0))+
theme(panel.background = element_blank(),
axis.ticks = element_blank(),
axis.text = element_blank())+
scale_fill_manual(values = c("#c65911","#ffd965"))
最后是拼图library(patchwork)
p1+p2+p3+ggtitle("Bacteriophages")+
theme(plot.title = element_text(hjust=5))+
plot_layout(widths = c(1.2,1,0.2)) -> p
ggsave(filename = "Rplot10.pdf",
p,
width = 10,height = 3)
最终的结果如下
到此,相信大家对"用R语言画柱形图怎么让屁股朝右"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
屁股
数据
语言
叠加
接下来
内容
右侧
格式
误差
热图
学习
实用
更深
兴趣
函数
均值
坐标
坐标轴
实用性
实际
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
长沙学软件开发有没有前途
学校丰富线上课程资源数据库
缓存服务器硬盘选购
国泰安数据库roa的区别
服务器增加内存识别不了
软件开发需要接触什么
酒店管理系统服务器版
高防Bgp服务器
思科网络技术学院软件
互联网科技捡漏技巧
怎么找软件开发项目商机
毕业两三年转行做软件开发
国内网络安全十大品牌
怎么看软件开发者信息
高级软件开发职称
龙源数据库论文怎么查
太仓标准软件开发口碑推荐
温州市鹿城区橙琪网络技术工作室
mysql数据库怎么退格
失落的方舟美西去哪个服务器
移动AP软件开发怎么样
数据库中三级模式结构的优点
上海智能网络技术开发操作
已断开服务器的连接
深圳自主可控软件开发供应商
公司网络技术建设
三星d828手机电子邮件服务器
土豆可以用来当服务器
台州嵌入式软件开发要求
2020数据库技术年会