❝本节来介绍如何通过R代码绘制调色板图,大家可根据自己喜爱整理常用的调色板方便后期使用,整个过程仅参考。希望对各位观众老爷能有所帮助。❞
library(tidyverse)
library(gridExtra)
library(scales)
library(ggsci)
hex_df <- read_tsv("col.xls")
rgb_df <- col2rgb(hex_df$color_hex)
lab_df <- convertColor(t(rgb_df), 'sRGB', 'Lab')
df <- data.frame(color = hex_df$color_hex[order(lab_df[, 'L'])])
df %>%
ggplot(aes(x = color, y = 1, fill = color)) +
geom_tile() +
scale_fill_identity() +
theme_void() +
theme(axis.title.x = element_text(size = 10,face="bold",color = "#000000"),
plot.margin = unit(c(1.75, 1.75, 1.75, 1.75), "cm"),
plot.background = element_rect(color = NA, fill = "#F2F2F2"))
sci_palettes <- list(aaas=pal_aaas()(10),
npg=pal_npg()(10),
nejm=pal_nejm()(8),
lancet=pal_lancet()(9),
jama=pal_jama()(7),
jco=pal_jco()(10),
d3=pal_d3()(10),
locuszoom=pal_locuszoom()(7),
uchicago=pal_uchicago()(9),
startek=pal_startrek()(7),
tron=pal_tron()(7),
futurama=pal_futurama()(12),
simpsons=pal_simpsons()(16),
cosmic=pal_cosmic("hallmarks_light")(10),
rickandmorty=pal_rickandmorty("schwifty")(12),
flatui=pal_flatui("default")(10),
frontiers=pal_frontiers("default")(10),
gsea=pal_gsea("default")(12))
plot_palette <- function(palette_name, colors) {
df <- data.frame(colors = colors, x = 1:length(colors))
p <- ggplot(df, aes(x = x, y = 1, fill = colors)) +
geom_tile() +
scale_fill_identity() +
labs(x=NULL,y=NULL)+
theme_void()+
theme(plot.title = element_text(size = 10,color="black",vjust=1,hjust=0.5))+
ggtitle(palette_name)
return(p)
}
可以将日常比较喜欢的颜色整理成相应格式,使用上方代码整合成调色版图进而还可制作成R包方便后期使用,本节介绍到此结束