• ggplot2颜色设置总结


    参考

    http://www.sthda.com/english/wiki/ggplot2-colors-how-to-change-colors-automatically-and-manually

    http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/

    查看颜色

    col.set.update <- c("#c10023", "#008e17", "#fb8500", "#f60000", "#FE0092", "#bc9000","#4ffc00", "#00bcac", "#0099cc",
                        "#D35400", "#00eefd", "#cf6bd6", "#99cc00", "#aa00ff", "#ff00ff", "#00896e",
                        "#f2a287","#ffb3ff", "#800000", "#77a7b7", "#0053c8", "#00cc99", "#007CC8")
    image(1:length(col.set.update),1, as.matrix(1:length(col.set.update)),col=col.set.update,xlab = "", ylab = "")
    
    • 1
    • 2
    • 3
    • 4

    结果如下
    在这里插入图片描述

    prepare data

    # Convert dose and cyl columns from numeric to factor variables
    ToothGrowth$dose <- as.factor(ToothGrowth$dose)
    mtcars$cyl <- as.factor(mtcars$cyl)
    head(ToothGrowth)
    
    • 1
    • 2
    • 3
    • 4

    结果如下
    在这里插入图片描述

    head(mtcars)
    
    • 1

    在这里插入图片描述

    basic plot

    library(ggplot2)
    # Box plot
    ggplot(ToothGrowth, aes(x=dose, y=len)) +geom_boxplot()
    # scatter plot
    ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point()
    
    • 1
    • 2
    • 3
    • 4
    • 5

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例1

    # box plot
    ggplot(ToothGrowth, aes(x=dose, y=len)) +
      geom_boxplot(fill='#A4A4A4', color="darkred")
    # scatter plot
    ggplot(mtcars, aes(x=wt, y=mpg)) + 
      geom_point(color='darkblue')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例2

    # Box plot
    bp<-ggplot(ToothGrowth, aes(x=dose, y=len, fill=dose)) +
      geom_boxplot()
    bp
    # Scatter plot
    sp<-ggplot(mtcars, aes(x=wt, y=mpg, color=cyl)) + geom_point()
    sp
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例3

    # Box plot
    bp + scale_fill_hue(l=40, c=35)
    # Scatter plot
    sp + scale_color_hue(l=40, c=35)
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述在这里插入图片描述

    颜色使用案例4

    # Box plot
    bp + scale_fill_manual(values=c("#999999", "#E69F00", "#56B4E9"))
    # Scatter plot
    sp + scale_color_manual(values=c("#999999", "#E69F00", "#56B4E9"))
    
    • 1
    • 2
    • 3
    • 4

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例5

    # Box plot
    bp + scale_fill_manual(breaks = c("2", "1", "0.5"), 
                           values=c("red", "blue", "green"))
    # Scatter plot
    sp + scale_color_manual(breaks = c("8", "6", "4"),
                            values=c("red", "blue", "green"))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例6

    library(ggplot2)
    if (require("maps")) {
    states <- map_data("state")
    arrests <- USArrests
    names(arrests) <- tolower(names(arrests))
    arrests$region <- tolower(rownames(USArrests))
    
    choro <- merge(states, arrests, sort = FALSE, by = "region")
    choro <- choro[order(choro$order), ]
    p=ggplot(choro, aes(long, lat)) +
      geom_polygon(aes(group = group, fill = assault)) +
      coord_map("albers",  lat0 = 45.5, lat1 = 29.5)
    print(p)
    }
    
    # if (require("maps")) {
    # p=ggplot(choro, aes(long, lat)) +
    #   geom_polygon(aes(group = group, fill = assault / murder)) +
    #   coord_map("albers",  lat0 = 45.5, lat1 = 29.5)
    # }
    # print(p)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    在这里插入图片描述

    颜色使用案例7

    # Two variables
    df <- read.table(header=TRUE, text='
     cond yval
        A 2
        B 2.5
        C 1.6
    ')
    
    # Three variables
    df2 <- read.table(header=TRUE, text='
     cond1 cond2 yval
        A      I 2
        A      J 2.5
        A      K 1.6
        B      I 2.2
        B      J 2.4
        B      K 1.2
        C      I 1.7
        C      J 2.3
        C      K 1.9
    ')
    
    library(ggplot2)
    # Default: dark bars
    ggplot(df, aes(x=cond, y=yval)) + geom_bar(stat="identity")
    # Bars with red outlines
    ggplot(df, aes(x=cond, y=yval)) + geom_bar(stat="identity", colour="#FF9999") 
    # Red fill, black outlines
    ggplot(df, aes(x=cond, y=yval)) + geom_bar(stat="identity", fill="#FF9999", colour="black")
    
    
    # Standard black lines and points
    ggplot(df, aes(x=cond, y=yval)) + 
        geom_line(aes(group=1)) +     # Group all points; otherwise no line will show
        geom_point(size=3)
    # Dark blue lines, red dots
    ggplot(df, aes(x=cond, y=yval)) + 
        geom_line(aes(group=1), colour="#000099") +  # Blue lines
        geom_point(size=3, colour="#CC0000")         # Red dots
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39

    结果如下
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

    颜色使用案例8

    # Box plot
    bp + scale_fill_brewer(palette="Dark2")
    # Scatter plot
    sp + scale_color_brewer(palette="Dark2")
    
    • 1
    • 2
    • 3
    • 4

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例9

    # Install
    #install.packages("wesanderson")
    # Load
    library(wesanderson)
    # Box plot
    bp+scale_fill_manual(values=wes_palette(n=3, name="Royal1"))
    # Scatter plot
    sp+scale_color_manual(values=wes_palette(n=3, name="Royal1"))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例10

    # Box plot
    bp + scale_fill_grey() + theme_classic()
    # Scatter plot
    sp + scale_color_grey() + theme_classic()
    
    • 1
    • 2
    • 3
    • 4

    结果如下
    在这里插入图片描述在这里插入图片描述

    颜色使用案例11

    # Box plot
    bp + scale_fill_grey(start=0.8, end=0.2) + theme_classic()
    # Scatter plot
    sp + scale_color_grey(start=0.8, end=0.2) + theme_classic()
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述在这里插入图片描述

    颜色使用案例12

    # Color by qsec values
    sp2<-ggplot(mtcars, aes(x=wt, y=mpg, color=qsec)) + geom_point()
    sp2
    # Change the low and high colors
    # Sequential color scheme
    sp2+scale_color_gradient(low="blue", high="red")
    # Diverging color scheme
    mid<-mean(mtcars$qsec)
    sp2+scale_color_gradient2(midpoint=mid, low="blue", mid="white",
                         high="red", space ="Lab" )
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    结果如下
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

    颜色使用案例13

    set.seed(1234)
    x <- rnorm(200)
    # Histogram
    hp<-qplot(x =x, fill=..count.., geom="histogram") 
    hp
    # Sequential color scheme
    hp+scale_fill_gradient(low="blue", high="red")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述在这里插入图片描述

    颜色使用案例14

    # Scatter plot
    # Color points by the mpg variable
    sp3<-ggplot(mtcars, aes(x=wt, y=mpg, color=mpg)) + geom_point()
    sp3
    # Gradient between n colors
    sp3+scale_color_gradientn(colours = rainbow(5))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述在这里插入图片描述

    颜色使用案例15

    # Bars: x and fill both depend on cond2
    ggplot(df, aes(x=cond, y=yval, fill=cond)) + geom_bar(stat="identity")
    
    # Bars with other dataset; fill depends on cond2
    ggplot(df2, aes(x=cond1, y=yval)) + 
        geom_bar(aes(fill=cond2),   # fill depends on cond2
                 stat="identity",
                 colour="black",    # Black outline for all
                 position=position_dodge()) # Put bars side-by-side instead of stacked
    
    # Lines and points; colour depends on cond2
    ggplot(df2, aes(x=cond1, y=yval)) + 
        geom_line(aes(colour=cond2, group=cond2)) + # colour, group both depend on cond2
        geom_point(aes(colour=cond2),               # colour depends on cond2
                   size=3)                          # larger points, different shape
    ## Equivalent to above; but move "colour=cond2" into the global aes() mapping
    # ggplot(df2, aes(x=cond1, y=yval, colour=cond2)) + 
    #    geom_line(aes(group=cond2)) +
    #    geom_point(size=3)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 相关阅读:
    52_Pandas处理日期和时间列(字符串转换、日期提取等)
    day40
    第3部分 静态路由
    信创之国产浪潮电脑+统信UOS操作系统体验4:visual studio code中怎么显示中文
    macbook 上的 redis.conf 在哪里
    npm:发布/迭代个人开发包到世界仓库
    【Python机器学习】自动化特征选择——迭代特征选择
    flink 1.14 编译
    sealos 作者创业心路历程
    C语言航路外传之如何隐藏代码及声明和定义的在工程中真正的使用场景
  • 原文地址:https://blog.csdn.net/qq_45759229/article/details/125422964