ggplot默认连续色阶名称是什么?如何复用其默认蓝色调色板?
关于ggplot默认蓝色色阶的复用与说明
1. ggplot默认连续色阶的名称
- 旧版ggplot2(3.0之前)的默认连续填充色阶没有单独命名,是由
scale_fill_continuous()生成的浅蓝到深蓝线性渐变,端点色为#F7FBFF(浅)和#2171B5(深)。 - 新版ggplot2(3.0+)的默认连续色阶为**
viridis**调色板(偏蓝绿渐变),若你看到的是纯蓝色渐变,大概率是使用了旧版ggplot2或手动指定了蓝色渐变。
2. 复用蓝色渐变调色板的方法
方法一:直接指定端点色还原旧版默认效果
如果需要在新图表中复用那个蓝色渐变,直接在scale_fill_continuous()里手动设置颜色端点即可:
ggplot(your_data) + geom_sf(aes(fill = your_continuous_var)) + scale_fill_continuous(low = "#F7FBFF", high = "#2171B5") + theme_test()
方法二:自定义可复用的调色板函数
如果要在多个图表中重复调用,可以把这个蓝色渐变封装成自定义调色板:
# 定义蓝色渐变调色板 blue_grad_pal <- scales::gradient_pal(low = "#F7FBFF", high = "#2171B5") # 在图表中调用 ggplot(your_data) + geom_sf(aes(fill = your_continuous_var)) + scale_fill_gradientn(colours = blue_grad_pal(seq(0, 1, length.out = 10))) + theme_test()
补充:若变量为离散型的情况
如果后续将code_region转为因子(离散变量),想要类似的蓝色系调色板,可以使用RColorBrewer的"Blues"系列:
ggplot(shape_br) + geom_sf(aes(fill = as.factor(code_region))) + scale_fill_brewer(palette = "Blues") + theme_test()
内容的提问来源于stack exchange,提问作者Monelisa
相关产品推荐
相关产品推荐

