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


R ggplot2 scale_shape 形状比例,又称字形


scale_shape() 将离散变量映射到六个易于辨别的形状。如果你的关卡超过六个,你会收到一条警告消息,第七个及后续关卡将不会出现在情节上。使用scale_shape_manual() 提供您自己的值。除非使用scale_shape_binned(),否则无法将连续变量映射到形状。不过,由于形状没有固有的顺序,因此不建议使用此方法。

用法

scale_shape(..., solid = TRUE)

scale_shape_binned(..., solid = TRUE)

参数

...

参数传递给discrete_scale

palette

调色板函数,当使用单个整数参数(比例中的级别数)调用时,返回它们应采用的值(例如 scales::hue_pal() )。

breaks

之一:

  • NULL 不间断

  • waiver() 用于默认中断(比例限制)

  • 中断的特征向量

  • 将限制作为输入并返回中断作为输出的函数。还接受 rlang lambda 函数表示法。

limits

之一:

  • NULL 使用默认比例值

  • 定义可能的比例值及其顺序的字符向量

  • 接受现有(自动)值并返回新值的函数。还接受 rlang lambda 函数表示法。

drop

是否应该从量表中省略未使用的因子水平?默认值 TRUE 使用数据中出现的级别; FALSE 使用因子中的所有级别。

na.translate

与连续尺度不同,离散尺度可以轻松显示缺失值,并且默认情况下会这样做。如果要从离散尺度中删除缺失值,请指定 na.translate = FALSE

na.value

如果na.translate = TRUE,缺失值应该显示为什么美学值?不适用于 NA 始终位于最右侧的位置比例。

aesthetics

该量表所适用的美学名称。

scale_name

应用于与该比例关联的错误消息的比例名称。

name

秤的名称。用作轴或图例标题。如果 waiver() (默认值),则比例名称取自用于该美学的第一个映射。如果是 NULL ,则图例标题将被省略。

labels

之一:

  • NULL 无标签

  • waiver() 用于由转换对象计算的默认标签

  • 给出标签的字符向量(必须与 breaks 长度相同)

  • 表达向量(必须与中断长度相同)。有关详细信息,请参阅?plotmath。

  • 将中断作为输入并返回标签作为输出的函数。还接受 rlang lambda 函数表示法。

guide

用于创建指南或其名称的函数。有关详细信息,请参阅guides()

super

用于构造比例的超类

solid

形状应该是实心的 TRUE ,还是空心的 FALSE

例子

set.seed(596)
dsmall <- diamonds[sample(nrow(diamonds), 100), ]

(d <- ggplot(dsmall, aes(carat, price)) + geom_point(aes(shape = cut)))
#> Warning: Using shapes for an ordinal variable is not advised

d + scale_shape(solid = TRUE) # the default

d + scale_shape(solid = FALSE)

d + scale_shape(name = "Cut of diamond")


# To change order of levels, change order of
# underlying factor
levels(dsmall$cut) <- c("Fair", "Good", "Very Good", "Premium", "Ideal")

# Need to recreate plot to pick up new data
ggplot(dsmall, aes(price, carat)) + geom_point(aes(shape = cut))
#> Warning: Using shapes for an ordinal variable is not advised


# Show a list of available shapes
df_shapes <- data.frame(shape = 0:24)
ggplot(df_shapes, aes(0, 0, shape = shape)) +
  geom_point(aes(shape = shape), size = 5, fill = 'red') +
  scale_shape_identity() +
  facet_wrap(~shape) +
  theme_void()

源代码:R/scale-shape.R

相关用法


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