查看原文
其他

ggplot2图形配色包,提取知名科技公司的主题颜色

段湘杰 R语言统计与绘图 2023-03-03

今天在浏览R包网站时发现一个R包——ggtech包。

这个R包干嘛用的了?

这个包是ggplot2的扩展包,看了下R包介绍,这个包是一个配色包,主要提取了一些知名科技公司(如facebook、google、twitter等知名公司)的logo主题颜色,并将其封装成函数,可以供我们绘图时使用。

下面我们来学习下这个包怎么使用?

1. 安装和加载R包

这个包不能从CRAN上安装,可以从github安装。

devtools::install_github("ricardo-bion/ggtech"
                          dependencies=TRUE)
library(ggtech)  # 加载包 
library(ggplot2)

如果github安装也安装不上,可以点击阅读原文直达ggtech的github网址,下载压缩包进行离线安装。

2. 先画个基础图形

因为这个包是ggplot2包的配色包,所以我们画个ggplot2图形。

选用ggplot2包的diamonds数据集进行演示。

# 选取color分类变量的4567水平的数据
mydata <- diamonds[diamonds$color %in% LETTERS[4:7], ]

gg <- ggplot(mydata, aes(carat, fill = color)) +   # 指定数据集和映射变量
  geom_histogram() # 绘制个直方图
gg

3. ggtech包怎么用?

ggtech包选取的各大知名科技公司的主题色和字体,所以在使用ggtech包前需要先导入这些公司的字体,如果没导入,绘图时会Windows字体数据库里没有这样的字体系列这样的提示信息。

怎么下载导入字体?

可以点击阅读原文进入帮助文件查看下载方式,

帮助文件里面的下载链接我没有下载成功,我是直接复制链接到浏览器下载的。

3.1 调整主题

ggtech包中的theme_tech()函数用来调整主题。

通过在theme_tech()函数指定theme的值来设置主题,可选值由airbnb、facebook、google、etsy、twitter、X23andme等。

下面来看代码。

gg + theme_tech(theme="airbnb")

其他主题的效果和上面图形差不了太多,主要表现为字体样式和颜色的区别,可以自己修改数值看看效果。

3.2 调整图形配色

ggtech包中的scale_color_tech()函数和scale_fill_tech()函数用来调整图形颜色。

看上面的两个函数,可以知道一个用来设置图形的轮廓色,一个用来设置图形的填充色的。

使用方法和前面差不多,通过在scale_xx_tech()函数中指定theme的值来设置主题,可选值也是那几个,下面看看效果。

gg + scale_fill_tech(theme = "airbnb")

注意:这个包封装的是科技公司的logo主题配色,函数里面的颜色色值只有4-5个,所以如果你的图形需要的不同颜色超过了5个,这个函数是会报错的。

这也是前面选择color变量4-7水平的数据进行演示的原因。

同时可以自行修改theme数值查看其他数值的效果。

上面是填充色的修改,轮廓色的修改是一样的,改下函数名称就可了,这里就不演示了。

试试完整的设置。

gg + theme_tech(theme = "airbnb") + 
  scale_fill_tech(theme = "google")

这个包就学到这里,有兴趣的点击阅读原文学习这个包更多的知识。

这个包的色值比较少,还是用ggsci好些。

参考资料

  1. ggtech包帮助文件。

既往专辑


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

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