【问题标题】:Coloured tail with geom_histogram without a step带有 geom_histogram 的彩色尾巴,没有步骤
【发布时间】:2021-08-26 05:09:57
【问题描述】:

有一个分布,我喜欢从一个特定的值到最后为长尾着色。 当我将 geom_histogram 和 aes(fill) 与 0-1-varibale 一起使用时,我迈出了一步。

任何想法如何防止这种情况?

例子:

set.seed(2713)
df <- data.frame(var_a = rnorm(n = 1000, mean = 10, sd = 2))
df2 <- data.frame(x = 12, y = 13)

ggplot() +
  geom_histogram(data = df, aes(var_a, fill = var_a > 12)) +
  geom_point(data = df2, aes(x = x, y = y), shape = 1, size = 15)

【问题讨论】:

    标签: r ggplot2 distribution


    【解决方案1】:

    在图层的统计部分将数据与after_stat() 合并后,您可以应用相同的逻辑。

    library(ggplot2)
    
    set.seed(2713)
    df <- data.frame(var_a = rnorm(n = 1000, mean = 10, sd = 2))
    df2 <- data.frame(x = 12, y = 13)
    
    ggplot() +
      geom_histogram(data = df, 
                     aes(var_a, fill = after_stat(x > 12)))
    #> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
    

    reprex package (v1.0.0) 于 2021-06-09 创建

    【讨论】:

    • 非常感谢。不知道函数after_stat()。使用 x 而不是 var_a 是什么意思?
    • 在内部,ggplot2 将var_a 转换为名为“x”的列,以在绘图构建过程中存储该数据。 after_stat() 没有“看到”原始数据(var_a 列),但它确实“看到”了评估统计信息(x 列)。
    猜你喜欢
    • 2014-04-17
    • 1970-01-01
    • 1970-01-01
    • 2012-02-28
    • 2017-04-02
    • 2011-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多