【问题标题】:Use of := and = in ggvis property assignments在 ggvis 属性分配中使用 := 和 =
【发布时间】: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 确实会时不时地在这些地方徘徊,所以也许他可以进一步启发我们。
  • 这有可能让许多经验丰富的业余用户绊倒。究竟什么是“原始的、未缩放的值”,它与其他既不是原始的也不是未缩放的值有何不同。

标签: r operators ggvis


【解决方案1】:

我在 ggvis 文档中找到了这个 “如果要使点具有固定的颜色或大小,则需要使用 := 而不是 =。 := 运算符意味着使用原始的、未缩放的值。”详情见 http://ggvis.rstudio.com/properties-scales.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-03
    相关资源
    最近更新 更多