查看原文
其他

R语言ggplot2画图一套好看的配色以及调整字体的简单小例子

Punicagranatum 小明的数据分析笔记本 2022-09-14

昨天看到的一份资料,介绍的是ggplot2画柱形图并且使用指定的字体,我感觉最终成图的配色还挺好看的,记录在这里。总共6个颜色值,分别是 c("#02B1e6", "#E81D22", "#F9BC15", "#8015f9", "#20e81d", "#e64602") ,参考资料的链接是 https://rstats-tips.net/2019/08/31/custom-fonts-in-ggplot2-and-latex/

首先用柱形图展示一下这个颜色的效果

代码

col<-c("#02B1e6""#E81D22""#F9BC15""#8015f9""#20e81d""#e64602")
df<-data.frame(x=LETTERS[1:6],
               y=6,
               label=c("#02B1e6""#E81D22""#F9BC15""#8015f9""#20e81d""#e64602"))
library(ggplot2)
ggplot(df,aes(x=x,y=y))+
  geom_col(aes(fill=x),show.legend = FALSE)+
  geom_label(aes(label=label))+
  scale_fill_manual(values = col)+
  theme_void()
image.png

看起来还不错吧!

开头提到的链接里还提到了如何使用指定的字体,这里可以参考一下B站的视频教程 https://www.bilibili.com/video/BV1ke411p7B4 这个里面提到的解决办法是 借助 extrafont这个R包,通过这个包中的font_import()函数将将操作系统中所有的字体导入,第一次使用时间可能会有点长。导入结束后就可以使用fonts()函数查看导入字体的名称。font_import()函数还可以导入指定路径下的字体

image.png

我的R语言里目前可以使用的字体如下

image.png

R语言ggplot2画图如果要更改图片整体的字体可以使用theme()函数设置text参数

library(ggplot2)
library(Cairo)
p<-ggplot(df,aes(x=x,y=y))+
  geom_col(aes(fill=x),show.legend = FALSE)+
  geom_label(aes(label=label),family="Times New Roman")+
  scale_fill_manual(values = col)+
  theme_bw()+
  theme(text = element_text(family = "Times New Roman",
                            size=20))
ggsave("Rplot01.pdf",p,device = cairo_pdf)
image.png

这里我遇到一个问题是 从系统里导入的字体可以使用,但是从指定目录导入的字体还不能使用,暂时不知道是什么原因

欢迎大家关注我的公众号

小明的数据分析笔记本

公众号二维码.jpg

小明的数据分析笔记本  公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记!


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

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