R绘图 | 堆叠柱状图

bef0416a271beba7f8982a6b0c6b5314.jpeg

stack_bar

整个新系列。目前的几个系列, 「#R实战」  以「生信分析」为主, 「#跟着CNS学作图」「复现顶刊」Figure为主,而本系列 「#R绘图」 则是学习不在文章中但同样很好看的图,致力于给同学们在数据可视化中提供新的思路和方法。

本系列往期文章

  1. R绘图 | 气泡散点图+拟合曲线

  2. R绘图 | 对比条形图+连线

  3. R绘图 | 一幅小提琴图的美化之旅

  4. R绘图 | 山峦图(ggridges)

  5. R绘图 | 哑铃图+区域放大

  6. R绘图 | 描述性统计常用图(散点图+柱状图+饼图)

  7. R绘图 | 圆角堆叠柱状图(ggchicklet )

  8. R绘图 | 时间线热图

本期图片

86d3e40a49b385faa1d9791c5731a74b.png
stack_bar

示例数据和代码领取

点赞在看 本文,分享至朋友圈集赞20个保留30分钟,截图发至微信mzbj0002领取。

「木舟笔记2022年度VIP可免费领取」

木舟笔记2022年度VIP企划

「权益:」

  1. 「2022」年度木舟笔记所有推文示例数据及代码(「在VIP群里实时更新」)。

    5f8135d1560fd94bb4033349bbfd386b.png
    data+code
  2. 木舟笔记「科研交流群」

  3. 「半价」购买跟着Cell学作图系列合集(免费教程+代码领取)|跟着Cell学作图系列合集

「收费:」

「99¥/人」。可添加微信:mzbj0002 转账,或直接在文末打赏。

0d3badb49d4f195e33da3e136ff61cdb.png

绘制

rm(list = ls())
library(ggthemes)
library(ggplot2)
by_names <- read.csv('by_names.csv')
head(by_names,5)


p

p <-by_names%>%
  ggplot(aes(x=avg_rating,y=fct_reorder(word,-avg_rating)))+
  geom_col(aes(fill=names), position = position_fill(),color="black")+
  ggthemes::scale_fill_tableau()+
  guides(fill=guide_legend(nrow = 1,reverse = T,keywidth = 0))+
  labs(fill="")+
  ggthemes::theme_fivethirtyeight()+
  theme(text=element_text(color="grey90"),
        plot.title = element_text(size=22),
        legend.position = "top",
        legend.background = element_rect(fill="black",color="black"),
        legend.text = element_text(size=12),
        strip.background = element_blank(),
        axis.text.y = element_text(size=12),
        panel.grid = element_line(size=3),
        plot.background = element_rect(fill="black",color="black"),
        panel.background = element_rect(fill="black",color="black"))
p
ggsave("stack_bar.png",
       dpi=320,
       height = 7,
       width = 9)
eecfa79a07b3619d2e923013cd7d5e59.png
stack_bar

参考

  • https://github.com/Fgazzelloni/TidyTuesday/blob/main/data/2022/w33_psychometrics/w33_psychometrics.Rmd


544630e9abcc20a5223fd57510eaf807.png
木舟笔记矩阵

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
R语言中,你可以使用`ggplot2`包来创建多参数堆叠柱状图。下面是一个示例代码,展示了如何使用`ggplot2`和`tidyverse`库来绘制多参数堆叠柱状图。 首先,确保已经安装了`ggplot2`和`tidyverse`包。如果还没有安装,可以使用以下命令进行安装: ```R install.packages("ggplot2") install.packages("tidyverse") ``` 接下来,导入所需的库: ```R library(ggplot2) library(tidyverse) ``` 然后,准备数据。假设你有一个数据框`data`,其中包含了多个参数的值。数据框应该包含一个表示每个参数名称的变量和用于绘制堆叠柱状图的数值变量。 ```R # 示例数据 data <- data.frame( 参数 = c("参数1", "参数2", "参数3"), 值1 = c(10, 20, 30), 值2 = c(15, 25, 35), 值3 = c(18, 28, 38) ) ``` 接下来,使用`tidyverse`库中的函数将数据整理为适合绘图的格式。我们使用函数`gather()`将数据从宽格式变为长格式,并创建一个新的变量`参数值`表示不同参数对应的值。 ```R # 整理数据 data_long <- data %>% gather(key = "参数值", value = "数值", -参数) ``` 最后,使用`ggplot2`来创建堆叠柱状图。我们使用`geom_bar()`函数来绘制柱状图,并使用`fill`参数指定堆叠颜色。 ```R # 创建堆叠柱状图 ggplot(data_long, aes(x = 参数, y = 数值, fill = 参数值)) + geom_bar(stat = "identity", position = "stack") + labs(title = "多参数堆叠柱状图", x = "参数", y = "值") + theme_minimal() ``` 运行上述代码后,你将得到一个多参数堆叠柱状图。你可以根据自己的数据和需求进行相应的修改和调整,以满足你的要求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值