查看原文
其他

可视化可爱的小蜜蜂

阿越就是我 医学和生信笔记 2023-02-25
关注公众号,发送R语言,获取学习资料!


今天学习一个使用好看的字体和形状进行可视化的例子。

数据集是来自于USDA[1]

数据集主要包含美国地区蜜蜂的相关信息,如封蜂群数量、最大数量、丢失数量、丢失率、增加数量、修复数量、修复率等。

加载R包和数据

最近发现有的小伙伴总是说加载R包这一步有问题,关于这一点只能是具体问题具体分析,每个人电脑配置、系统、使用习惯等都不一样,没有通用的解决方法,建议直接百度报错代码。

# 加载R包
library(ggplot2)
library(tidytuesdayR)
library(ggbeeswarm)
library(ggpomological) 
library(showtext)

# 加载数据
colony <- readRDS("colony.rds")

1222行,10列的数据。

glimpse(colony)

Rows: 1,222
Columns: 10
$ year            <dbl> 2015201520152015,~
$ months          <chr> "January-March""Janua~
$ state           <chr> "
Alabama", "Arizona", "~
$ colony_n        <dbl> 70003500013000144~
$ colony_max      <dbl> 70003500014000169~
$ colony_lost     <dbl> 18004600150025500~
$ colony_lost_pct <dbl> 261311151222,~
$ colony_added    <dbl> 28003400120025000~
$ colony_reno     <dbl> 250210090124000, ~
$ colony_reno_pct <dbl> 46171NA89~

数据处理和画图

主要是想看下不同年份和季节蜜蜂群丢失率情况。

colony$year <- factor(colony$year, levels = c(2015:2021))
colony$months<- factor(colony$months,levels = c("January-March","April-June",
                                                "July-September",
                                                "October-December"))

pallete <- c("#BD4932""#C98A1C","#105B63""#FFD34E")

画图:

# 这一步很重要,可以让你自由使用各种字体!
font_add("b Bee Pollen","F:/软件/fonts/BeePollen-lgE8Z.otf")
showtext_auto()

# 画图
plot <- ggplot(colony,aes(x = year, y = colony_lost_pct, color = months)) + 
  geom_quasirandom(method = "pseudorandom",size = 2, pch = 8) + # 画抖动散点图
  labs(title = "Bee Colony Losses in the US",
       x = NULL, y = NULL, colour = NULL) + 
  theme_pomological() +
  theme(text = element_text(family = "b Bee Pollen"),
        plot.title = element_text(colour = "#704d10", size = 40),
        legend.text = element_text(colour = "#704d10", size = 25),
        axis.title = element_text(size = 25),
        axis.text = element_text(size = 20),
        legend.position = "bottom",
        legend.direction = "horizontal") +
  scale_y_continuous(labels = function(value) paste0(value,"%"))+
  scale_color_manual(values=pallete) +
  coord_flip()

plot
image-20220321081741959

今天的小例子很短,不过有几个非常有用的知识点,一个是使用showtext包自由添加各种字体,绕过windows总是缺少字体的提示,另一个是使用geom_quasirandom画抖动散点图。

想要获取数据和字体的小伙伴可直接在公众号后台回复20220317获取今日数据。数据配合代码复制粘贴即可运行,前提是装好相应的R包哦。

参考资料

[1]

USDA: https://usda.library.cornell.edu/concern/publications/rn301137d?locale=en


以上就是今天的内容,希望对你有帮助哦!欢迎点赞、在看、关注、转发

欢迎在评论区留言或直接添加我的微信!




欢迎关注公众号:医学和生信笔记

医学和生信笔记 公众号主要分享:1.医学小知识、肛肠科小知识;2.R语言和Python相关的数据分析、可视化、机器学习等;3.生物信息学学习资料和自己的学习笔记!



往期回顾




R语言处理因子之forcats包介绍(4)

2022-02-11

R语言处理因子之forcats包介绍(3)

2022-02-10

R语言处理因子之forcats包介绍(2)

2022-02-09

R语言处理因子之forcats包介绍(1)

2022-02-08

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存