r-在哪里可以找到作为geom_point的字符输入的形状和颜色的完整列表


p <- ggplot(mtcars, aes(wt, mpg))
p + geom_point(shape = "square", color = "blue")

我有一个函数,它将接受shapecolor参数,这些参数将传递给geom_point。我需要检查输入是否有效。所以我需要做一些类似的事情:

stopifnot(形状%在%all_valid_shapes中(彩色同上

那么我在哪里可以得到这些列表呢?

请参阅此现有问题以验证颜色。

对于形状,可以使用未导出的ggplot函数来验证形状名称

ggplot2:::translate_shape_string(4)       # ok
ggplot2:::translate_shape_string("cross") # ok
ggplot2:::translate_shape_string("oops")  # bad
ggplot2:::translate_shape_string(30)      # bad

你可以看到它是否抛出错误。但由于这是一个未导出的函数,因此不能保证它在ggplot2的未来版本中工作或维护,因此使用该函数的风险自负。

或者,ggplot规范的渐晕vignette("ggplot2-specs", package="ggplot2")中有一段代码似乎给出了所有可能值的列表。您可以对照该列表检查潜在的字符串值。

shape_names <- c(
"circle", paste("circle", c("open", "filled", "cross", "plus", "small")), "bullet",
"square", paste("square", c("open", "filled", "cross", "plus", "triangle")),
"diamond", paste("diamond", c("open", "filled", "plus")),
"triangle", paste("triangle", c("open", "filled", "square")),
paste("triangle down", c("open", "filled")),
"plus", "cross", "asterisk"
)

相关内容

  • 没有找到相关文章

最新更新