【发布时间】:2014-07-04 04:32:49
【问题描述】:
ggvis 交互的入门页面
http://ggvis.rstudio.com/interactivity.html#property-mappings
提供以下代码:
library(dplyr)
library(ggvis)
mtcars %>%
ggvis(~wt, ~mpg) %>%
layer_smooths(span = input_slider(0.5, 1, value = 1)) %>%
layer_points(size := input_slider(100, 1000, value = 100))
代码在 rstudio/knitr/shiny 环境下正常运行。
我的问题涉及在 layer_smooths() 函数中使用 = 赋值运算符,但在 layer_points() 函数中使用 := 运算符。在这两个函数中,都定义了一个属性(跨度或大小),并调用相同的闪亮函数(input_slider)来分配该属性。
为什么有两个不同的赋值运算符 = 和 := ?它们之间有什么区别?
【问题讨论】:
-
不知道,但 Hadley Wickham 在 Google 群组上的这篇帖子提到了这一点:groups.google.com/forum/#!topic/ggvis/pKlvZFkxzZM
-
晚邮件做得好!我没有找到这个参考。然而,意思(尽管哈德利通常的口才)对我来说仍然有点不透明......大小如何未缩放但跨度被缩放......?
-
这个意思对我来说也很不透明。 @hadley 确实会时不时地在这些地方徘徊,所以也许他可以进一步启发我们。
-
这有可能让许多经验丰富的业余用户绊倒。究竟什么是“原始的、未缩放的值”,它与其他既不是原始的也不是未缩放的值有何不同。