7scale_xxx()标度调整

标度用于控制变量映射到视觉对象的具体细节,如坐标轴标签和图例
视觉对象分为:
坐标轴,alpha透明度,color/fill颜色,date/time时间轴, hue色相, grey灰度,
shape点形, size尺寸, linetype线型, radius半径, area面积
它们都有相应的标度函数
分为简单函数和复合函数,复合函数内包含简单函数,简单函数如下:

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度

(点击放大)

复合标度函数:

除去默认的8个系统默认的标度scale_xxx_identity(),软件默认的一般用不上,用得上就不需要改了, 这8个分别是: scale_color_identity()scale_fill_identity()scale_shape_identity()scale_linetype_identity(),

scale_alpha_identity()scale_size_identity()scale_discrete_identity()scale_continuous_identity()

还有一个手动处理任意离散变量的标度函数scale_discrete_manual(),其增加了1个映射参数,如aesthetics = c("color", "fill")

现在还剩下11组标度函数,分类如下:

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_02

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_03

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_04

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_05

(点击放大)

7.1

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_06

(点击放大)

参数解释:
* name 表示指定坐标轴名称,也将作为对应的图例名称
* breaks 表示指定坐标轴刻度位置,即粗网格线位置
* labels 表示指定坐标轴刻度标签内容
* limits 表示指定坐标轴显示范围,支持反区间
* expand 表示扩展坐标轴显示范围,不能缩小
* trans 表示指定坐标轴变换函数,自带有“asn”,“atanh”,“boxcox”,“exp”,“identity”,“log”,“log10”,“log1p”,“log2”,“logit”,“probability”,“probit”,“reciprocal”。

还支持scales包内的其它变换函数,如scales::percent()百分比刻度,自定义scales::trans_new()

* position 表示指定坐标轴显示位置,x轴为“left”和“right”, y轴为“top”和“bottom”

* minor_breaks 表示指定细网格线对应位置,细网线没有标签对应,没有labels参数

* sec.axis 表示是否开启次坐标轴

例:


library(ggplot2) p1 <- ggplot(mpg, aes(displ, hwy)) +  geom_point() p1 p1 +  scale_x_continuous(name = "发动机排量/L", limits = c(2,6), breaks = c(2, 4, 6), labels = c("two", "four", "six"),                     minor_breaks = c(3, 5)) + # 重新指定坐标轴名称, 只显示区间(2, 6)范围的元素, 更改坐标轴刻度和标签  scale_y_continuous(name = "高速公路油耗" )  # 重新指定坐标轴名称 set.seed(14) df <- data.frame(  x = rnorm(10) * 100000,  y = seq(0, 1, length.out = 10) ) p2 <- ggplot(df, aes(x, y)) + geom_point(shape=21, color = "purple", fill = "cyan", size = 5) p2 + scale_y_continuous(labels = scales::percent) # y轴百分号显示 p2 + scale_x_continuous(labels = scales::comma) + # 数字逗号分割,每3位数增加1个逗号  scale_y_continuous(labels = scales::dollar) # y轴美元单位显示


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_07

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_08

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_09

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_10

7.2

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_11

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_12

(点击放大)

参数解释:

* type 在scale_color_continuous中表示指定变化类型,是普通渐变“gradient”还是色盲渐变“viridis”

scale_xxx_distiller()中表示指定色板类型,是“seq”渐变,“qual”离散对比,还是“div”两极色板

* palette 表示指定色条类型,当type色板类型已经指定的情况下,可以用序号指定,若type未指定,则必须用色条名称指定

* direction 表示指定标度与变量的匹配方向,direction=-1表示方向翻转 在scale_xxx_hue()中,direction=1表示色轮的顺时针方向,direction=-1表示逆时针方向

* low, high表示渐变的颜色两极颜色名称或HEX色值,如果用颜色名称指定,则可用muted("color")指定某个暗色

* mid 表示指定渐变的中点颜色

* midpoint 表示指定渐变的中点对应的变量值

* colors/colours 多色渐变中,指定颜色向量, 如colour = terrain.colors(10)取10个地形图颜色作为渐变的基础色

* values 表示指定自定义颜色向量,如果变量为数字类型,则默认按数字大小顺序与values匹配,

如果变量为字符类型,则默认按变量字母顺序与values匹配,

为了按照想要的顺序匹配,可以给变量增加一个因子水平,然后自动按照因子水平与values匹配(自上而下,由低到高)

也可给values向量设置名称属性,名称与要映射的变量值一样,然后按照名称属性匹配

* range 表示指定指定显示的透明度范围,在[0, 1]区间内,0表示不透明,1表示不透明

* limits 表示设定显示范围

* breaks 表示设定图例刻度位置

* labels 表示指定图例刻度处显示标签

* h 表示指定色相范围,在区间[0, 360]内

* c 表示指定chroma(色度,鲜艳或是暗淡)值,最大值取决于hue和luminance

* l 表示指定luminance(亮度),在区间[0, 100]内

* start 表示指定灰度起点,从0到1,0表示白色,1表示黑色

* end 表示灰度结束点,通常end,默认end更黑,若设定start>end,则翻转标度

* end 表示灰度结束点,通常end,默认end更黑

* 其它公共参数:name图例名称,palette, breaks, labels, limits, expand, position(标签在图例的上)

* 只有连续的标度函数,如scale_xxx_gradient^()才支持trans内置参数色轮图:

以红色和橙色的界限作为0刻度,开始旋转

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_13

7.2.1

library(ggplot2) # scale_fill_continuous v <- ggplot(faithfuld, aes(waiting, eruptions, fill = density)) + geom_tile() v v + scale_fill_continuous(type = "gradient", name = "密度", breaks = c(0, 0.05,    0.01, 0.02, 0.03, 0.04), labels = c(0, 0.05, 0.01, 0.02, 0.03, 0.04), position = "left")  # 更改图例名称,不支持刻度点,图例标签位置,匹配方向等参数 v + scale_fill_continuous(type = "viridis")  # 结果与scale_fill_viridis_c()一样 # scale_color_distiller set.seed(19) dsamp <- diamonds[sample(nrow(diamonds), 1000), ] (d <- ggplot(dsamp, aes(carat, price)) + geom_point(aes(colour = clarity))) v <- ggplot(faithfuld) + geom_tile(aes(waiting, eruptions, fill = density)) v v + scale_fill_distiller(palette = "Spectral", breaks = c(0, 0.05, 0.01, 0.02,    0.03, 0.04), labels = c(0, 0.05, 0.01, 0.02, 0.03, 0.04))  # 更改图例刻度及标签失败 # scale_xxx_gradient^() set.seed(18) df <- data.frame(x = runif(100), y = runif(100), z1 = rnorm(100), z2 = abs(rnorm(100))) ggplot(df, aes(x, y)) + geom_point(aes(colour = z2))  # 默认从light blue到dark blue ggplot(df, aes(x, y)) + geom_point(aes(colour = z2)) + scale_colour_gradient(low = "white",    high = "black", name = "这是图例名称", breaks = c(0, 0.5, 1, 2, 3, 4), labels = c(0,        0.5, 1, 2, 3, 4))  # 灰度渐变,修改图例名称,图例刻度及刻度标签 ggplot(df, aes(x, y)) + geom_point(aes(colour = z1), size = 2) + scale_colour_gradient2()  # 两极渐变, ggplot(df, aes(x, y)) + geom_point(aes(fill = z2), shape = 21, size = 3) + scale_fill_gradient2(low = "blue",    mid = "red", midpoint = 2, high = "cyan", name = "这是图例名称")  # 修改基础颜色, ggplot(df, aes(x, y)) + geom_point(aes(colour = z1)) + scale_colour_gradientn(colours = terrain.colors(10),    name = "这是图例名称")  # 应用terrain.colors内置色板,更改标度方向失败


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_14

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_15

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_16

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_17

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_14

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_19

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_20

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_21

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_22

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_23

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_24

library(ggplot2) # scale_color_brewer dsamp <- diamonds[sample(nrow(diamonds), 1000), ] (d <- ggplot(dsamp, aes(carat, price)) + geom_point(aes(colour = clarity))) d + scale_colour_brewer(name = "钻石透明度", palette = "Greens", direction = -1,    position = "left")  # 更改图例名称,色板,标度方向,更改位置失败 d + scale_colour_brewer(palette = "Set1", name = "钻石透明度")  # 多种颜色也可以渐变,非常方便 # scale_color_manual p <- ggplot(mtcars, aes(mpg, wt)) + geom_point(aes(colour = factor(cyl))) p + scale_colour_manual(values = c("red", "blue", "green")) # 按名称属性匹配 cols <- c(`8` = "red", `4` = "blue", `6` = "darkgreen", `10` = "orange")  # 设定名称属性 p + scale_colour_manual(values = cols)  # 名称属性匹配 p + scale_colour_manual(name = "这是图例名字", values = cols, breaks = c("4",    "6", "8"), labels = c("four", "six", "eight"), limits = c("4", "6", "8",    "10"))


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_25

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_26

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_27

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_28

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_29

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_30

7.2.2

library(ggplot2) p <- ggplot(mpg, aes(displ, hwy)) +  geom_point(aes(alpha = year)) p p + scale_alpha(range = c(0.4, 0.8), name = "这是图例名称") # 设定透明度范围为0.4到0.8 dsamp <- diamonds[sample(nrow(diamonds), 1000), ] d <- ggplot(dsamp, aes(carat, price)) + geom_point(aes(colour = clarity)) d + scale_colour_hue(name = "这是图例名称") # 默认全色轮 d + scale_colour_hue(l = 70, c = 150, name = "这是图例名称")# 调整色度和亮度 d + scale_colour_hue(h = c(0, 90), "这是图例名称") # 设定色相范围,0代表红色与橙色的分界 d + scale_colour_hue(h = c(90, 180), "这是图例名称") d + scale_colour_hue(h = c(270, 360), "这是图例名称") # 灰度 p <- ggplot(mtcars, aes(mpg, wt)) + geom_point(aes(colour = factor(cyl))) p + scale_colour_grey() p + scale_colour_grey(start = 0.8, end = 0.2, name = "这是图例名称") # 修改灰度范围 # 灰度增加缺失值映射 miss <- factor(sample(c(NA, 1:5), nrow(mtcars), replace = TRUE)) ggplot(mtcars, aes(mpg, wt)) +  geom_point(aes(colour = miss)) + # 若缺失向量是data数据的子集,则可以映射  scale_colour_grey(na.value = "green", name = "这是图例名称") # 增加缺失值为绿色


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_31

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_32

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_33

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_34

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_35

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_36

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_37

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_38

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_39

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_40

7.2.3

library(ggplot2) # 离散变量 txsamp <- subset(txhousing, city %in% c("Houston", "Fort Worth", "San Antonio",    "Dallas", "Austin")) d <- ggplot(data = txsamp, aes(x = sales, y = median)) + geom_point(aes(colour = city)) d d + scale_colour_viridis_d()  # 默认viridis色板 d + scale_colour_viridis_d(option = "plasma", name = "这是图例名称")  # 更改色板为plasma d + scale_colour_viridis_d(option = "B", name = "这是图例名称")  # 更改色板为inferno d + scale_colour_viridis_d(option = "magma", name = "这是图例名称") d + scale_colour_viridis_d(option = "cividis", name = "这是图例名称") # 连续变量 v <- ggplot(faithfuld) + geom_tile(aes(waiting, eruptions, fill = density)) v + scale_fill_viridis_c() v + scale_fill_viridis_c(option = "plasma", name = "这是图例名称")


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_41

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_42

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_43

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_44

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_45

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_46

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_16

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_48

7.3

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_49

(点击放大)

参数解释:
* name 表示指定图例的名称
* breaks 表示指定图例的刻度位置
* labels 表示指定图例刻度的显示标签
* limits 表示指定该标度显示范围
* values 为向量,表示手动指定shape,通过给变量增加一个因子水平,然后就按因子水平与values对应顺序匹配
* direction 表示指定标度匹配顺序

et.seed(15) dsmall <- diamonds[sample(nrow(diamonds), 100), ] d <- ggplot(dsmall, aes(carat, price)) + geom_point(aes(shape = cut), color = "blue",    position = position_jitter(width = 0.1, height = 0.3)) d d + scale_shape(name = "钻石切割水平", breaks = c("Fair", "Good", "Very Good",    "Premium", "Ideal"), labels = c("一般", "还行", "很好", "上好", "顶级"))  # 设置图例的名称和刻度标签 oneshape <- c(25:21) levels(dsmall$cut) <- c("Fair", "Good", "Very Good", "Premium", "Ideal")  # 给要映射的变量增加因子水平,然后通过因子水平匹配 dsmall <- diamonds[sample(nrow(diamonds), 100), ] d <- ggplot(dsmall, aes(carat, price)) + geom_point(aes(shape = cut), color = "blue",    position = position_jitter(width = 0.1, height = 0.3))  # d + scale_shape_manual(values = oneshape, name = "切割工艺")  # values的顺序与变量的因子水平一致


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_50

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_51

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_52

7.4

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_53

(点击放大)

参数解释:
* name 表示指定在所对应图例的标题内容
* limits 表示设置显示范围,其变量的范围,不是尺寸的范围
* breaks 表示指定图例刻度位置
* labels 表示指定图例刻度显示标签
* range 表示指定trans转化后半径/线宽后的尺寸显示范围,与limits参数不同
* trans 表示指定尺寸转化公式,指定后尺寸与变量不是线性关系
例:

p <- ggplot(mpg, aes(displ, hwy, size = hwy)) + geom_point(position = position_jitter(width = 0.1,    height = 0.2), shape = 21, fill = "green") p p + scale_radius(name = "高速公路油耗", range = c(2, 10), limits = c(0, 30))  # 指定半径从2变化到10,即最小半径为2,最大半径为10,只显示值小于30的数据点 p + scale_size(name = "高速公路油耗", range = c(2, 10), limits = c(0, 30), breaks = c(2,    12, 25, 30), labels = c("2L", "12L", "25L", "30L"))  # 设置图例刻度及标签 p + scale_size_area(name = "高速公路油耗", max_size = 8, breaks = c(2, 12, 25,    30), labels = c("2L", "12L", "25L", "30L"))  # 指定最大面积为8,最小面积从0开始


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_54

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_55

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_56

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_57

7.5

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_58

(点击放大)

所谓时间轴,就是当横轴或纵轴是由时间、日期序列映射产生的

scale_xxx_date() 要求变量是Date格式

scale_xxx_datetime() 要求变量是POSIXct格式

scale_xxx_time() 要求变量是hms格式

参数解释:

* name 表示指定坐标轴名称

* breaks 表示指定坐标轴刻度位置,即粗网格线位置, Date/POSIXct向量格式

* labels 表示指定坐标轴刻度显示标签,即breaks点显示文字内容

* date_breaks 表示指定时间跨度(如“2 weeks”, “10 years”),当与breaks同时指定时,优先级高于breaks

* date_labels 刻度显示标签, strftime()格式, 如果与labels同时指定,优先级高于labels

* minor_breaks 表示细网格刻度位置,与breaks类型相同

* date_minor_breaks 与date_breaks类型相同,表示细网格跨度

* limits 表示指定显示范围

* expand 表示扩展显示范围

* position 表示时间轴位置,x为“top”或“bottom”, y为“left”和“right”

* timezone 表示切换时区,默认为原时间时区

* obb 表示指定处理在limits之外是时间函数, 默认为NA

例:

library(ggplot2) last_month <- Sys.Date() - 0:29 set.seed(16) df <- data.frame(date = last_month, price = runif(30)) base <- ggplot(df, aes(date, price)) + geom_line() base + scale_x_date(name = "日期", date_labels = "%b %d")  # 格式化参数,%b表示月份英文缩小,%d表示月份中第几天 base + scale_x_date(name = "日期", date_breaks = "1 week", date_labels = "第%W周",    date_minor_breaks = "1 day", limits = c(Sys.Date() - 7, NA))  # 时间跨度为1周,%W表示年内的星期数,第几周, 设定细网格时间跨度为1天, 设定显示范围为7天前至今


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_59

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_60

8facet_xxx()分面系统

分面有2种函数:

facet_grid() 网格分面

facet_wrap() 封装分面,自动分成2x4, 3x2等版块

表达式:

facet_grid(rows = NULL, cols = NULL, scales = "fixed", labeller = "label_value", facets)

facet_wrap(facets, nrow = NULL, labeller = "label_value",strip.position = "top")

参数解释:

* rows 表示要进行行分面的变量,如rows = vars(drv)表示将变量drv作为维度进行行分面,可以使用多个分类变量

* cols 表示要进行列分面的变量,如cols = vars(drv)表示将变量drv作为维度进行列分面,可以使用多个分类变量

* scales 表示分面后坐标轴适应规则,下面会介绍

* facets 表示将哪些变量作为维度进行分面,,在网格分面中,尽量不使用,而使用rows和cols参数

网格分面:varname.按变量varname行分面;.varname按变量varname列分面; varname1 ~ varname2 表示按varname1行分,varname2列分

封装分面:~variable,或var(variable),可以使用多个变量

* nrow 表示封装分面排列时行数目

* labeller 表示指定分面标题内容,分为:“label_value”只显示分面变量值,“label_both”显示分面变量名称和变量值,

显示字符串及特殊字符,可以线增加特殊字符变量,然后按该变量分面,使用labeller = label_parsed将特殊字符解析出来,

labeller = label_bquote()指定显示数学公式

* strip.position 表示指定分面标题放置位置,分为: “top”顶部,“bottom”底部

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_61

(点击放大)

8.1

library(ggplot2) p <- ggplot(mpg, aes(displ, hwy)) + geom_point() p + facet_wrap(vars(class))  # 封装分面,使用class变量作为分面维度 p + facet_wrap(~class)  # 与上面一样 p + facet_wrap(vars(class), nrow = 4)  # 重新排列分面,分4行排 p + facet_wrap(vars(cyl, drv))  # 高维分面,按cyl和drv两个变量分面 p + facet_wrap(c("cyl", "drv"), labeller = "label_both")  # 更改分面标题内容,显示分面变量名和变量值 p + facet_wrap(~class, scales = "free")  # 更改facets方式,设定x轴自适应 p + facet_wrap(~class, scales = "free_y", nrow = 2, strip.position = "bottom")  # 设定y轴自适应,2行排列,分面标题置于底部


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_62

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_62

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_64

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_65

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_66

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_67

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_68

8.2

library(ggplot2) p <- ggplot(mpg, aes(displ, cty)) + geom_point() p + facet_grid(rows = vars(drv))  # 以drv变量行分面 p + facet_grid(cols = vars(cyl))  # 以cyl变量列分面 p + facet_grid(vars(drv), vars(cyl))  # 同时行分面和列分面 p + facet_grid(. ~ cyl)  # 更改facets方式,以cyl列分面 p + facet_grid(drv ~ .)  # 以drv变量行分面 p + facet_grid(drv ~ cyl)  # 以drv变量行分,以cyl变量列分 mg <- ggplot(mtcars, aes(x = mpg, y = wt)) + geom_point() mg + facet_grid(vs + am ~ gear, scales = "free_y")  # 高维分面,y轴自适应


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_69

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_70

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_71

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_70

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_69

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_灰度_71

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_75

8.3

library(ggplot2) # label_parsed解析 mtcars$cyl2 <- factor(mtcars$cyl, labels = c("alpha", "beta", "gamma"))  # 新增一个特殊字符向量 p <- ggplot(mtcars, aes(wt, mpg)) + geom_point() p + facet_grid(. ~ cyl2, labeller = label_parsed)  # label_parsed解析 # label_bquote数学公式 p <- ggplot(mtcars, aes(wt, mpg)) + geom_point() p + facet_grid(. ~ vs, labeller = label_bquote(cols = .(vs)^.(vs)))  # 变量指数形式显示


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_76

R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_坐标轴_77


R语言ggplot怎么在热图上标注相关系数 r语言ggplot2手动添加图例_图例_78