如何在ggplot2中全局定义彩条指南的美学?

Posted

技术标签:

【中文标题】如何在ggplot2中全局定义彩条指南的美学?【英文标题】:How to globally define the aesthetics of a color bar guide in ggplot2? 【发布时间】:2021-11-22 16:42:29 【问题描述】:

我有一个带有彩条的图例。默认情况下,刻度线是白色的。我可以使用guides(fill = guide_colorbar(ticks.colour = "black") 在每个绘图中将它们更改为黑色。有没有办法以一种通用的方式进行这种修改?也许在theme_set()theme() 里面

library(ggplot2)

X <- 1:3
Y <- 1:3

DF <- expand.grid(X = X,
                  Y = Y)

DF$Z <- 1:9

p <-  ggplot(data = DF,
             aes(x = X,
                 y = Y,
                 fill = Z)) +
  geom_tile()

p + guides(fill = guide_colorbar(ticks.colour = "black",
                                 frame.colour = "black"))

【问题讨论】:

【参考方案1】:

据我所知,刻度颜色无法全局更改,但图例周围的框架可以使用theme_set。创建一个自定义主题,然后将其设置为默认主题。

theme_Daniel <- function() 
  theme_minimal() %+replace%    #replace elements we want to change
    theme(
      legend.box.background = element_rect(color = "black")
    )


theme_set(theme_Daniel())
p

【讨论】:

以上是关于如何在ggplot2中全局定义彩条指南的美学?的主要内容,如果未能解决你的问题,请参考以下文章

R语言获得所有Aesthetics(美学映射)参数:使用长表输出使用宽表输出

R语言绘图——数据可视化ggplot2 介绍和主要的参数

ggplot2 plus 运算符是如何定义的?

如何在 ggplot2 中自定义图例?

更改 geom_boxplot 中的晶须定义

阿尔法美学显示箭头的骨架而不是简单的形状 - 如何防止它?