【问题标题】:R {ggplot2} define the bars columns by color within applied facet_grid()?R {ggplot2} 在应用的 facet_grid() 中按颜色定义条形列?
【发布时间】:2016-12-14 14:25:08
【问题描述】:

我有一个包含多个级别的两个变量的基本图,可以通过 facet_grid() 显示。结果,我有一组相同颜色的树皮,按两个变量的级别排列。

但是,如果我想表明我的数据来自不同的来源,该怎么办? 即从周五到周日 - 来自红色数据,周四来自黑色数据。

有没有一种方法可以在我的最终绘图上用颜色表示我的数据来自 RED 和 BLACK 数据集?

类似:

(示例取自:http://www.cookbook-r.com/Graphs/Facets_(ggplot2)/

示例代码:

require(ggplot2)
library(reshape2)

head(tips)

ggplot(tips, aes(x=total_bill)) + geom_histogram(binwidth=2,colour="white")+ 
  facet_grid(sex ~ day)

我知道我可以在 Inkscape 中轻松更改这些颜色,也许有一个基于 R 的简单解决方案?


我将在图标题中指定的数据源(红色和黑色):无需在图中指定。

【问题讨论】:

    标签: r plot


    【解决方案1】:

    通过将day 分配给fill 美学并为day 的不同值手动定义颜色,您可以获得所需的效果。

    以下代码:

    ggplot(tips, aes(x=total_bill, fill = day)) + geom_histogram(binwidth=2, colour = "white")+ 
      facet_grid(sex ~ day) +
      scale_fill_manual(values = c("Fri" = "Red", "Sat" = "Red", "Sun" = "Red", "Thur" = "Black"))
    

    给出以下情节:

    可以通过添加+ guides(fill = "none")来隐藏图例

    【讨论】:

      【解决方案2】:

      这行得通:

      ggplot(tips, aes(x=total_bill, fill=day=="Thur")) + geom_histogram(binwidth=2)+ 
        facet_grid(sex ~ day) +
        scale_fill_manual(values=c("red", "black"))
      

      编辑:添加颜色“黑色”和“红色”

      【讨论】:

        猜你喜欢
        • 2016-05-29
        • 2014-04-07
        • 1970-01-01
        • 2014-11-17
        • 1970-01-01
        • 2014-10-30
        • 2021-07-10
        • 1970-01-01
        相关资源
        最近更新 更多