【问题标题】:ggplot and dplyr filter referenceggplot 和 dplyr 过滤器参考
【发布时间】:2019-03-13 09:54:07
【问题描述】:

这是我的代码:

mtcars %>% filter(cyl == 4) %>%
  ggplot(., aes(mpg, hp, color=hp)) +
  geom_point() +
  scale_color_gradient(low = "darkorange2", high = "darkred",
                       breaks=c(min(mtcars$hp), max(mtcars$hp)), 
                       labels=c("Min","Max"))

我想做的是,在我事先调用的过滤器中包含 scale_color_gradient 函数中的中断。我知道.$hp 在base R 中工作并且只使用dplyr 中的变量名,但是在这种情况下我该如何使用它呢?

【问题讨论】:

    标签: r ggplot2 dplyr


    【解决方案1】:

    您可以将所有绘图代码放在大括号中,以将“正确”对象保留在. 中。此外,如果您想从最小值变为最大值,可以使用range()。例如

    mtcars %>% filter(cyl == 4) %>%
      {ggplot(., aes(mpg, hp, color=hp)) +
      geom_point() +
      scale_color_gradient(low = "darkorange2", high = "darkred",
                           breaks=range(.$hp), 
                           labels=c("Min","Max"))}
    

    【讨论】:

    • 感谢您的回答。这似乎是解决这种情况的好方法。
    猜你喜欢
    • 1970-01-01
    • 2021-03-22
    • 1970-01-01
    • 2016-06-28
    • 2013-07-27
    • 1970-01-01
    • 2017-05-06
    • 2020-05-08
    • 1970-01-01
    相关资源
    最近更新 更多