ggMarginal绘制边际箱线图时如何为x/y轴箱线图设置不同颜色
实现方法
ggMarginal 没有内置直接分别设置x、y轴边际图配色的参数,不需要设置分组变量,直接修改生成的边际图对象的图层属性即可实现两个边际箱线图配色不同的效果,完整代码如下:
library(tidyverse) library(ggExtra) foo <- data.frame(x=rnorm(100,mean=1,sd=1), y=rnorm(100,mean=2,sd=2)) p1 <- ggplot(data = foo,aes(x=x,y=y)) + geom_point() + coord_equal() # 先将默认边际图存为变量 p_combine <- ggMarginal(p1, type="boxplot", size=12) # 配置x轴上方边际箱线的样式:填充浅蓝,边框为黑色 p_combine$top$layers[[1]]$aes_params$fill <- "#619CFF" p_combine$top$layers[[1]]$aes_params$colour <- "black" # 配置y轴右侧边际箱线的样式:填充浅红,边框为黑色 p_combine$right$layers[[1]]$aes_params$fill <- "#F8766D" p_combine$right$layers[[1]]$aes_params$colour <- "black" # 输出最终图形 p_combine
自定义调整说明
- 你可以自由替换
fill对应的色值,换成你需要的填充色;colour对应的色值换成你需要的边框颜色,支持R内置颜色名、十六进制色号等所有合法颜色输入。 - 如果需要调整箱线的其他属性,也可以通过给
aes_params新增对应参数实现:- 调整边框线宽:加
$linewidth = 数值 - 调整透明度:加
$alpha = 0-1之间的数值 - 调整箱线线型:加
$linetype = 线型编号/名称
- 调整边框线宽:加
内容的提问来源于stack exchange,提问作者user111024
相关产品推荐
相关产品推荐

