11

在阅读http://ggvis.rstudio.com/interactivity.html时,我注意到代码中有 := 洒在其中。我认为这是一种为函数提供参数的新方法?究竟是什么?

mtcars %>%
  ggvis(~wt, ~mpg, size := input_slider(10, 1000)) %>%
  layer_points(fill := "red") %>%
  layer_points(stroke := "black", fill := NA)
4

1 回答 1

12

在这种情况下,:=只是分配固定值的 ggvis 语法;相反,=这里将用于分配变量值。正如您在代码示例中可能已经注意到的那样,在右侧,只有“red”或 NA 这样的值,因此:=是在此上下文中使用的正确运算符。例如,如果您希望“size”依赖于“mpg”列,则可以size = mpg使用通常的等号编写 。

我承认我不太熟悉:=是否有其他软件包也采用了这个运算符。

来自http://ggvis.rstudio.com/properties-scales.html(有关更多示例和信息,请参阅):

“props() 函数使用 = 运算符进行映射(缩放),使用 := 运算符进行设置(未缩放)。它还使用 ~ 运算符指示应在数据中计算表达式(在 ggvis 中,数据可以更改);如果没有 ~ 运算符,表达式会在当前环境中立即计算。一般来说,您会希望将 ~ 用于数据中的变量,而不是将其用于常量值。

于 2015-08-18T15:45:40.770 回答