当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R ggplot2 scale_brewer ColorBrewer 的连续、发散和定性色标


brewer 标度提供来自 ColorBrewer 的连续、发散和定性配色方案。这些特别适合在Map上显示离散值。请参阅https://colorbrewer2.org 了解更多信息。

用法

scale_colour_brewer(
  ...,
  type = "seq",
  palette = 1,
  direction = 1,
  aesthetics = "colour"
)

scale_fill_brewer(
  ...,
  type = "seq",
  palette = 1,
  direction = 1,
  aesthetics = "fill"
)

scale_colour_distiller(
  ...,
  type = "seq",
  palette = 1,
  direction = -1,
  values = NULL,
  space = "Lab",
  na.value = "grey50",
  guide = "colourbar",
  aesthetics = "colour"
)

scale_fill_distiller(
  ...,
  type = "seq",
  palette = 1,
  direction = -1,
  values = NULL,
  space = "Lab",
  na.value = "grey50",
  guide = "colourbar",
  aesthetics = "fill"
)

scale_colour_fermenter(
  ...,
  type = "seq",
  palette = 1,
  direction = -1,
  na.value = "grey50",
  guide = "coloursteps",
  aesthetics = "colour"
)

scale_fill_fermenter(
  ...,
  type = "seq",
  palette = 1,
  direction = -1,
  na.value = "grey50",
  guide = "coloursteps",
  aesthetics = "fill"
)

参数

...

其他参数分别传递给 discrete_scale()continuous_scale()binned_scale() ,用于 brewerdistillerfermenter 变体,以控制名称、限制、中断、标签等。

type

"seq"(顺序)、"div"(发散)或 "qual"(定性)之一

palette

如果是字符串,将使用该命名的调色板。如果是数字,将索引到相应 type 的调色板列表中。可用调色板列表可以在调色板部分找到。

direction

设置比例中颜色的顺序。如果为 1(默认值),颜色将由 RColorBrewer::brewer.pal() 输出。如果为 -1,则颜色顺序相反。

aesthetics

字符串或字符串向量,列出了该比例所使用的美学名称。例如,这可以用于通过 aesthetics = c("colour", "fill") 同时将颜色设置应用于 colourfill 美学。

values

如果颜色不应该沿着渐变均匀定位,则该向量给出 colours 向量中每种颜色的位置(0 到 1 之间)。有关将任意范围映射到 0 到 1 之间的便捷函数,请参阅 rescale()

space

用于计算渐变的颜色空间。必须是 "Lab" - 其他值已弃用。

na.value

用于缺失值的颜色

guide

图例类型。使用 "colourbar" 表示连续颜色条,或使用 "legend" 表示离散颜色图例。

细节

brewer 量表经过精心设计并在离散数据上进行了测试。它们并不是为了扩展到连续数据而设计的,但结果通常看起来不错。你的旅费可能会改变。

注意

distiller 比例尺通过将任意调色板中的 7 种颜色平滑地插值到连续比例尺来扩展 brewer 比例尺。 fermenter 标度提供 brewer 标度的分箱版本。

调色板

以下调色板可用于这些比例:

Diverging

BrBG、PiYG、PRGn、PuOr、RdBu、RdGy、RdYlBu、RdYlGn、频谱

Qualitative

强调、深色 2、配对、柔和 1、柔和 2、套装 1、套装 2、套装 3

Sequential

蓝色、BuGn、BuPu、GnBu、绿色、灰色、橙色、OrRd、PuBu、PuBuGn、PuRd、紫色、RdPu、红色、YlGn、YlGnBu、YlOrBr、YlOrRd

通过palette参数修改调色板。

例子

set.seed(596)
dsamp <- diamonds[sample(nrow(diamonds), 1000), ]
(d <- ggplot(dsamp, aes(carat, price)) +
  geom_point(aes(colour = clarity)))

d + scale_colour_brewer()


# Change scale label
d + scale_colour_brewer("Diamond\nclarity")


# Select brewer palette to use, see ?scales::brewer_pal for more details
d + scale_colour_brewer(palette = "Greens")

d + scale_colour_brewer(palette = "Set1")


# \donttest{
# scale_fill_brewer works just the same as
# scale_colour_brewer but for fill colours
p <- ggplot(diamonds, aes(x = price, fill = cut)) +
  geom_histogram(position = "dodge", binwidth = 1000)
p + scale_fill_brewer()

# the order of colour can be reversed
p + scale_fill_brewer(direction = -1)

# the brewer scales look better on a darker background
p +
  scale_fill_brewer(direction = -1) +
  theme_dark()

# }

# Use distiller variant with continous data
v <- ggplot(faithfuld) +
  geom_tile(aes(waiting, eruptions, fill = density))
v

v + scale_fill_distiller()

v + scale_fill_distiller(palette = "Spectral")


# or use blender variants to discretise continuous data
v + scale_fill_fermenter()


相关用法


注:本文由纯净天空筛选整理自Hadley Wickham等大神的英文原创作品 Sequential, diverging and qualitative colour scales from ColorBrewer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。