查看原文
其他

ggplot2图形常见的几种配色方法

阿童木 R语言统计与绘图 2023-03-03

举例展示几种常用的ggplot取色方法,如:

  1. 通过字符串区分取色;
  2. 通过数字取色;
  3. 取渐变色;
  4. 通过RColotBrewer方案取色。

1. 构建数据集

df = data.frame(x=1:10
                y=seq(1202), 
                z=seq(1000100, -100), 
                c=paste("color", seq(1101)))
df

2. 安装和加载包

install.packages("ggplot2"# 安装包
install.packages("RColorBrewer")
library(ggplot2) # 加载包
library(RColorBrewer)

3. 绘制图形

3.1 基础图形

ggplot(df, aes(x=x, y=y)) +
  geom_bar(stat="identity")

3.2 默认颜色

在ggplot2 的图形语法中,颜色是一个图形属性,如同x 的位置、y 的位置、大小等一样。

对于图形中的几何对象,可以设置colour或者fill参数的值来设置颜色。

一般而言,colour参数控制的是线条、多边形轮廓的颜色,而fill参数控制的是多边形的填充色。

如果需要用一个变量(数据框的某一列)来控制几何对象的颜色,将colour或fi11参数的值设置为数据中某一列的列名即可。

ggplot(df, aes(x=x, y=y, fill=c)) + 
  geom_bar(stat="identity") +
  labs(x="x axis", y="y axis", fill="legend")

3.3 数字取色-正序

x变量是个递增的向量。

ggplot(df, aes(x=x, y=y, fill=x)) +
  geom_bar(stat="identity") +
  labs(x="x axis", y="y axis", fill="legend")

3.4 数字取色-倒序

z变量是个递减的向量。

ggplot(df, aes(x=x, y=y, fill=z)) +
  geom_bar(stat="identity") +
  labs(x="x axis", y="y axis", fill="legend")

3.5 渐变色:色1-色2取色

colors <- colorRampPalette(c("red""orange"))(10)
colors
# [1] "#FF0000" "#FF1200" "#FF2400" "#FF3700" "#FF4900" "#FF5B00" "#FF6E00" "#FF8000" "#FF9200" "#FFA500"

ggplot(df, aes(x=x, y=y)) +
  geom_bar(stat="identity", fill=colors[rank(10:1)]) +
  labs(x="x axis", y="y axis", fill="legend")

3.6 RColorBrewer取色:set3为例

ggplot(df, aes(x=x, y=y)) +
  geom_bar(stat="identity", fill=brewer.pal(10"Set3")) +
  labs(x="x axis", y="y axis", fill="legend")

本文直接来源微生态,作者阿童木。


既往专辑



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

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